mobile computing unit 1 , 2

276
Mobile Computing

Upload: evilanubhav

Post on 10-Apr-2015

2.503 views

Category:

Documents


2 download

DESCRIPTION

Mobile Computing Unit 1 , 2 PDF merger is used to combine diff. files .. some blank pages are in between for u to write ur notes...

TRANSCRIPT

Page 1: Mobile Computing Unit 1 , 2

Mobile Computing

Page 2: Mobile Computing Unit 1 , 2
Page 3: Mobile Computing Unit 1 , 2
Page 4: Mobile Computing Unit 1 , 2
Page 5: Mobile Computing Unit 1 , 2
Page 6: Mobile Computing Unit 1 , 2
Page 7: Mobile Computing Unit 1 , 2
Page 8: Mobile Computing Unit 1 , 2
Page 9: Mobile Computing Unit 1 , 2
Page 10: Mobile Computing Unit 1 , 2
Page 11: Mobile Computing Unit 1 , 2
Page 12: Mobile Computing Unit 1 , 2

Fundamental Challenges in Mobile ComputingM. Satyanarayanan

School of Computer ScienceCarnegie Mellon University

AbstractThis paper is an answer to the question: "What is unique and conceptually different about

mobile computing?" The paper begins by describing a set of constraints intrinsic to mobilecomputing, and examining the impact of these constraints on the design of distributed systems.Next, it summarizes the key results of the Coda and Odyssey systems. Finally, it describes theresearch opportunities in five important topics relevant to mobile computing: caching metrics,semantic callbacks and validators, resource revocation, analysis of adaptation, and globalestimation from local observations.

• Mobility is inherently hazardous.1. IntroductionA Wall Street stockbroker is more likely to be

What is really different about mobile computing? The mugged on the streets of Manhattan and have hiscomputers are smaller and bits travel by wireless rather laptop stolen than to have his workstation in athan Ethernet. How can this possibly make any difference? locked office be physically subverted. In addition toIsn’t a mobile system merely a special case of a distributed security concerns, portable computers are moresystem? Are there any new and deep issues to be vulnerable to loss or damage.investigated, or is mobile computing just the latest fad? • Mobile connectivity is highly variable in

performance and reliability.This paper is my attempt to answer these questions. TheSome buildings may offer reliable, high-bandwidthpaper is in three parts: a characterization of the essence ofwireless connectivity while others may only offermobile computing; a brief summary of results obtained bylow-bandwidth connectivity. Outdoors, a mobilemy research group in the context of the Coda and Odysseyclient may have to rely on a low-bandwidth wirelesssystems; and a guided tour of fertile research topicsnetwork with gaps in coverage.awaiting investigation. Think of this paper as a report from

the front by an implementor of mobile information systems • Mobile elements rely on a finite energy source.While battery technology will undoubtedly improveto more theoretically-inclined computers scientists.over time, the need to be sensitive to powerconsumption will not diminish. Concern for power1.1. Constraints of Mobilityconsumption must span many levels of hardwareMobile computing is characterized by four constraints:and software to be fully effective.• Mobile elements are resource-poor relative to static

elements. These constraints are not artifacts of current technology,For a given cost and level of technology, but are intrinsic to mobility. Together, they complicate theconsiderations of weight, power, size and design of mobile information systems and require us toergonomics will exact a penalty in computational rethink traditional approaches to information access.resources such as processor speed, memory size,and disk capacity. While mobile elements will 1.2. The Need for Adaptationimprove in absolute ability, they will always be

Mobility exacerbates the tension between autonomy andresource-poor relative to static elements.interdependence that is characteristic of all distributedsystems. The relative resource poverty of mobile elements

This research was supported by the Air Force Materiel Command as well as their lower trust and robustness argues for(AFMC) and ARPA under contract number F196828-93-C-0193. reliance on static servers. But the need to cope withAdditional support was provided by the IBM Corp. and Intel Corp. The

unreliable and low-performance networks, as well as theviews and conclusions contained here are those of the authors and shouldnot be interpreted as necessarily representing the official policies or need to be sensitive to power consumption argues for self-endorsements, either express or implied, of AFMC, ARPA, IBM, Intel, reliance.CMU, or the U.S. Government.

Any viable approach to mobile computing must strike abalance between these competing concerns. This balancecannot be a static one; as the circumstances of a mobileclient change, it must react and dynamically reassign theresponsibilities of client and server. In other words, mobileclients must be adaptive.

Page 13: Mobile Computing Unit 1 , 2

1.3. Taxonomy of Adaptation StrategiesThe range of strategies for adaptation is delimited by two

extremes, as shown in Figure 1. At one extreme,adaptation is entirely the responsibility of individualapplications. While this laissez-faire approach avoids theneed for system support, it lacks a central arbitrator toresolve incompatible resource demands of different

Local Remote

Server

Code

Client

CodeServercode

Clientcode

applications and to enforce limits on resource usage. Italso makes applications more difficult to write, and fails to Figure 2: Temporary Blurring of Rolesamortize the development cost of support for adaptation.

Coping with the constraints of mobility requires us torethink this model. The distinction between clients andservers may have to be temporarily blurred, resulting in theextended client-server model shown in Figure 2. Theresource limitations of clients may require certainoperations normally performed on clients to sometimes be

Laissez-faire Application-transparent

Application-aware

(no system support) (no changes to applications)

(collaboration)

performed on resource-rich servers. Conversely, the needFigure 1: Range of Adaptation Strategiesto cope with uncertain connectivity requires clients to

The other extreme of application-transparent adaptation sometimes emulate the functions of a server. These are, ofplaces entire responsibility for adaptation on the system. course, short-term deviations from the classic client-serverThis approach is attractive because it is backward model for purposes of performance and availability. Fromcompatible with existing applications: they continue to the longer-term perspective of system administration andwork when mobile without any modifications. The system security, the roles of servers and clients remain unchanged.provides the focal point for resource arbitration andcontrol. The drawback of this approach is that there may 2. Summary of Coda and Odyssey Resultsbe situations where the adaptation performed by the systemis inadequate or even counterproductive. We have been exploring application-transparent

adaptation since about 1990. Our research vehicle has beenBetween these two extremes lies a spectrum ofthe Coda File System, a descendant of AFS [2]. Coda haspossibilities that we collectively refer to asbeen in active use for five years, and has proved to be aapplication-aware adaptation. By supporting avaluable testbed [13]. Coda clients are in regular use overcollaborative partnership between applications and thea wide range of networks such as 10 Mb/s Ethernet, 2 Mb/ssystem, this approach permits applications to determineradio, and 9600 baud modems.how best to adapt, but preserves the ability of the system to

monitor resources and enforce allocation decisions. Since the research contributions of Coda have alreadybeen extensively documented in the literature, we only

1.4. The Extended Client-Server Model provide a high-level summary of the key results here:Another way to characterize the impact of mobile

Disconnected operationcomputing constraints is to examine their effect on theCoda has demonstrated that disconnected operation isclassic client-server model. In this model, a small numberfeasible, effective, and usable in a distributed Unixof trusted server sites constitute the true home of data.file system [3, 4, 17]. The key mechanims for

Efficient and safe access to this data is possible from a supporting disconnected operation include hoardingmuch larger number of untrusted client sites. Techniques (user-assisted cache management), update loggingsuch as caching and read-ahead can be used to provide with extensive optimizations while disconnected, andgood performance, while end-to-end authentication and reintegration upon reconnection.encrypted transmission can be used to preserve security.

Optimistic replicationCoda was one of the earliest systems to demonstrateThis model has proved to be especially valuable forthat an optimistic replica control strategy can be usedscalability [16]. In effect, the client-server modelfor serious and practical mobile computing [6]. Itdecomposes a large distributed system into a small nucleusincorporates several novel mechanisms to render thisthat changes relatively slowly, and a much larger and lessapproach viable. These include log-based directorystatic periphery of clients. From the perspectives ofresolution [5], application-specific file resolution [7],security and system administration, the scale of the system and mechanisms for conflict detection, containment

appears to be that of the nucleus. But from the perspectives and manual repair.of performance and availability, a user at the periphery

Support for weak connectivityreceives almost standalone service.Coda has shown that weak connectivity can be

2

Page 14: Mobile Computing Unit 1 , 2

exploited to alleviate the limitations of disconnected 3.1. Caching Metricsoperation [12]. The mechanisms needed to Caching plays a key role in mobile computing because ofaccomplish this include adaptive transport protocols, its ability to alleviate the performance and availabilitya rapid cache validation mechanism, a trickle limitations of weakly-connected and disconnectedreintegration mechanism for propagating updates, and operation. But evaluating alternative caching strategies formodel-based cache miss handling for usability. mobile computing is problematic.

Isolation-only transactionsToday, the only metric of cache quality is the miss ratio.In the context of Coda, a new abstraction called

The underlying assumption of this metric is that all cacheisolation-only transaction has been developed to copemisses are equivalent (that is, all cache misses exactwith the detection and handling of read-write conflictsroughly the same penalty from the user). This assumptionduring disconnected operation [9]. This abstractionis valid when the cache and primary copies are stronglyselectively incorporates concepts from database

transactions, while making minimal demands of connected, because the performance penalty resulting fromresource-poor mobile clients and preserving upward a cache miss is small and, to a first approximation,compatibility with Unix applications. independent of file length. But the assumption is unlikely

to be valid during disconnected or weakly-connectedServer replicationoperation.Coda has shown how server replication can be used to

complement disconnected operation [15]. AlthoughThe miss ratio also fails to take into account the timing ofthis is not particularly relevant to mobility, it is an

misses. For example, a user may react differently to aimportant result in distributed systems because itcache miss occurring within the first few minutes ofclarifies the relationship between first-class (i.e.,disconnection than to one occurring near the end of theserver) replicas and second-class replicas (i.e., clientdisconnection. As another example, the periodic spin-caches). It also represents one of the first

demonstrations of optimistic replication applied to a down of disks to save power in mobile computers makes itdistributed system with the client-server model. cheaper to service a certain number of page faults if they

are clustered together than if they are widely spaced.More recently, we have begun exploration of application-aware adaptation in Odyssey, a platform for mobile To be useful, new caching metrics must satisfy twocomputing. An preliminary prototype of Odyssey has been important criteria. First, they should be consistent withbuilt [14, 18], and a more complete prototype is under qualitative perceptions of performance and availabilitydevelopment. The early evidence is promising, but it is far experienced by users in mobile computing. Second, theytoo early for definitive results. should be cheap and easy to monitor. The challenge is to

develop such metrics and demonstrate their applicability tomobile computing. Initial work toward this end is being3. Fertile Topics for Explorationdone by Ebling [1].

We now turn to the discussion of promising research3.1.1. Some Open Questionstopics in mobile computing. By its very nature, this section

• What is an appropriate set of caching metrics forof the paper is highly speculative and will raise far moremobile computing?questions than it answers. Further, this is a selective list: it

is certainly not intended to be complete. Rather, my goal is • Under what circumstances does one use eachto give the reader a tantalizing glimpse of the rich problem metric?space defined by mobile computing.

• How does one efficiently monitor these metrics?In choosing the five topics discussed below, I have

• What are the implications of these alternativefollowed two guidelines. First, these problems are moremetrics for caching algorithms?

likely to be solved by rigor and analysis than byimplementation and experience. Second, each of these 3.2. Semantic Callbacks and Validatorsproblems is real, not contrived. Good solutions and Preserving cache coherence under conditions of weakinsights to these problems will strongly impact the mobile connectivity can be expensive. Large communicationcomputing systems of the future. latency increases the cost of validation of cached objects.

Intermittent failures increase the frequency of validation,Each topic is presented in two parts: a brief discussionsince it must be performed each time communication isthat lays out the problem space of the topic, followed by arestored. A lazy approach that only validates on demandsample of open questions pertaining to it. Again, my aimcould reduce validation frequency; but this approach wouldin posing these questions is not to be exhaustive but toworsen consistency because it increases the likelihood ofoffer food for thought.stale objects being accessed while disconnected. The costof cache coherence is exacerbated in systems like Coda that

3

Page 15: Mobile Computing Unit 1 , 2

use anticipatory caching for availability, because the inexpensive validator for cached data satisfying somenumber of objects cached (resident set size) is much larger complex criteria.than the number of objects in current use (working set

Consider the example of a transcontinental distributedsize).

system in the United States. Even at the speed of light,The Coda solution is to maintain cache coherence at communication from one coast to the other takes about 16

multiple levels of granularity and to use callbacks [11]. milliseconds. A round trip RPC will take over 30Clients and servers maintain version information on milliseconds. During this time, a client with a 100 MIPindividual objects as well as entire subtrees of them. Rapid processor can execute over 3 million instructions! Sincecache validation is possible by comparing version stamps processor speed can be expected to increase over time, theon the subtrees. Once established, validity can be lost computational opportunity represented by this scenariomaintained through callbacks. This approach to cache will only worsen.coherence trades precision of invalidation for speed of

Over time, the synchronous model implicit in the use ofvalidation. It preserves correctness while dramatically

RPC will become increasingly untenable. Eventually, veryreducing the cost of cache coherence under conditions of

wide-area distributed systems will have to be structuredweak connectivity. Usage measurements from Coda

around an asynchronous model. At what scale andconfirm that these potential gains are indeed achievable in

timeframe this shift will occur depends on two factors: thepractice [12].

substantially simpler design, implementation, andThe idea of maintaining coherence at multiple debugging inherent in the synchronous model, and the

granularities can be generalized to a variety of data types considerably higher performance (and hence usability) ofand applications in the following way: the asynchronous model.

• a client caches data satisfying some predicate P One promising asynchronous model is obtained byfrom a server. combining the idea of cheap but conservative validation

with the style of programming characterized by optimistic• the server remembers a predicate Q that is muchconcurrency control [8]. The resulting approach bearscheaper to compute, and possesses the property Q

implies P. In other words, as long as Q is true, the some resemblance to the use of hints in distributedcached data it corresponds to is guaranteed to be systems [19], and is best illustrated by an example.valid. But if Q is false, nothing can be inferred

Consider remote control of a robot explorer on theabout that data.surface of Mars. Since light takes many minutes to travel

• On each update, the server re-evaluates Q. If Q from earth to Mars, and emergencies of various kinds maybecomes false, the server notifies the client that its arise on Mars, the robot must be capable of reacting on itscached data might be stale. own. At the same time, the exploration is to be directed

live by a human controller on earth — a classic command• Prior to its next access, the client must contact theserver and obtain fresh data satisfying P. and control problem.

We refer to Q as a semantic callback for P, because the This example characterizes a distributed system in whichinterpretation of P and Q depends on the specifics of the communication latency is large enough that a synchronousdata and application. For example, P would be an SQL design paradigm will not work. The knowledge of theselect statement if one is caching data from a relational robot’s status will always be obsolete on earth. But, sincedatabase. Or it could be a piece of code that performs a emergencies are rare, this knowledge will usually differpattern match for a particular individual’s face from a from current reality in one of two benign ways. Either thedatabase of images. Q must conform to P: a simpler differences are in attributes irrelevant to the task at hand, orselect statement in the first case, and a piece of code the differences can be predicted with adequate accuracy bythat performs a much less accurate pattern match in the methods such as dead reckoning. Suppose the robot’s statesecond case. In Coda, P corresponds to the version number is P, as characterized in a transmission to earth. Based onof an object being equal to a specific value (x), while Q some properties, Q, of this state, a command is issued tocorresponds to the version number of the encapsulating the robot. For this command to be meaningful when itvolume being unchanged since the last time the version reaches the robot, Q must still be true. This can be verifiednumber of the object was confirmed to be x. by transmitting Q along with the command, and having the

robot validate Q upon receipt. For this approach to beSemantic validation can be extended to domains beyondfeasible, both transmitting and evaluating Q must be cheap.mobile computing. It will be especially valuable in

geographically widespread distributed systems, where the There are, of course, numerous detailed questions to betiming difference between local and remote actions is too answered regarding this approach. But it does offer anlarge to ignore even when communication occurs at the intriguing way of combining correctness with performancespeed of light. The predicate Q in such cases serves as an in very wide-area distributed systems.

4

Page 16: Mobile Computing Unit 1 , 2

3.2.1. Some Open Questions • What strategies does one use if multiple resourcesmust be simultaneously revoked?• Under what circumstances are semantic callbacks

most useful? When are they not useful? • How does one distinguish between resources whoserevocation is easy to recover from and those it is• What forms can P and Q take for data types andexpensive or impossible to recover from?applications in common use? How does one

estimate their relative costs in those cases? • How does one handle deadlocks during revocation?• Can P and Q really be arbitrary code? Are there

3.4. Analysis of Adaptationrestrictions necessary for efficiency andHow does one compare the adaptive capabilities of twopracticality?

mobile clients? The primary figure of merit is agility, or• How does one derive Q from P quickly? Are there the ability of a client to promptly respond to perturbations.

restrictions on P that make this simpler?Since it is possible for a client to be more agile with respect

• How does one trade off the relative cost and benefit to some variables (such as bandwidth) than others (such asof P and Q? Is the tradeoff space discrete or battery power), agility should be viewed as a compositecontinuous? Can this tradeoff be made adaptive? metric.

A system that is highly agile may suffer from instability.3.3. Algorithms for Resource RevocationSuch a system consumes almost all its resources reacting toApplication-aware adaptation complicates the problem ofminor perturbations, hence performing little usefulresource management. In principle, the system owns allcomputation. The ideal mobile client is obviously one thatresources. At any time, it may revoke resources that it hasis highly agile but very stable with respect to all variablestemporarily delegated to an applicaton. Alas, reality isof interest.never that simple. A variety of factors complicate the

problem. Control theory is a domain that might have usefulinsights to offer in refining these ideas and quantifyingFirst, some applications are more important than others.them. Historically, control theory has focused on hardwareAny acceptable revocation strategy must be sensitive tosystems. But there is no conceptual reason why it cannotthese differences. Second, the cost of revoking the samebe extended to software systems. Only carefulresource may be different to different applications. Forinvestigation can tell, of course, whether the relevance isexample, reducing the bandwidth available to onedirect and useful or merely superficial.application may result in its substantially increasing the

amount of processing it does to compensate. A similar 3.4.1. Some open questionsreduction in bandwidth for another application may result • What are the right metrics of agility?in a much smaller increase in processing. A good

• Are there systematic techniques to improve therevocation strategy must take into account these differentialagility of a system?impacts. Third, there may be dependencies between

processes that should be taken into account during • How does one decide when a mobile system isrevocation. For example, two processes may have a "agile enough"?producer-consumer relationship. Revoking resources from

• What are the right metrics of system stability?one process may cause the other to stall. More complexdependencies involving multiple processes are also • Can one develop design guidelines to ensurepossible. Unless revocation takes these dependencies into stability?account, hazards such as deadlocks may occur.

• Can one analytically derive the agility and stabilityRevocation of resources from applications is not common properties of an adaptive system without building it

first?in current systems. Classical operating systems researchhas focused on resource allocation issues rather than

3.5. Global Estimation from Local Observationsresource revocation. As a result there is currently littleAdaptation requires a mobile client to sense changes incodified knowledge about safe and efficient techniques for

its environment, make inferences about the cause of theserevocation. This deficiency will have to be remedied aschanges, and then react appropriately. These imply theapplication-aware adaptation becomes more widely used.ability to make global estimates based on local

3.3.1. Some open questions observations.• How does one formulate the resource revocation

To detect changes, the client must rely on localproblem?observations. For example, it can measure quantities such

• How does one characterize the differential impact of as local signal strength, packet rate, average round-triprevocation on different applications? times, and dispersion in round-trip times. But interpreting

5

Page 17: Mobile Computing Unit 1 , 2

these observations is nontrivial. A change in a given evolution of biological species, and its influence on thequantity can be due to a multiplicity of non-local capabilities of computing systems [10]. Although Hans’phenomena. For example, packet rate will drop due to an comments are directed at robotic systems, I believe that hisoverload on a distant server. But it will also drop when observation applies equally well to a much broader class ofthere is congestion on an intermediate network segment. If distributed computing systems involving mobile elements.an incorrect cause is inferred from an observation, the Mobility will influence the evolution of distributed systemsadaptation performed by the client may be ineffective or in ways that we can only dimly perceive at the presentcounterproductive. time. In this sense, mobile computing is truly a seminal

influence on the design of distributed systems.At present there is no systematic theory to guide global

estimation from local observations. The problem isAcknowledgementsespecially challenging in the absence of out-of-band

communication, because the client cannot use an This paper is the result of many years of interaction andalternative channel to help narrow the diagnosis on the brainstorming with members of the Coda and Odyssey projects.main communication channel. These members include Jay Kistler, Puneet Kumar, David Steere,

Lily Mummert, Maria Ebling, Hank Mashburn, Brian Noble,3.5.1. Some Open Questions Masashi Kudo, Josh Raiff, Qi Lu, Morgan Price, Hiroshi Inamura,

Tetsuro Muranaga, Bob Baron, Dushyanth Narayanan, and Eric• Are there systematic ways to do global estimationTilton.from local estimates?

I wish to thank Vassos Hadzilacos and Yoram Moses, the• Can one bound the error in global estimates?program chairmen of the Fourteenth and Fifteenth ACMSymposia on Principles of Distributed Computing respectively,• What is the relationship of global estimation tofor giving me the opportunity to present these thoughts as anagility of adaptation? Can one quantify thisinvited speaker at PODC ’95 and as an invited paper in therelationship?proceedings of PODC ’96. I also wish to thank Matt Zekauskas

• Can one provide system support to improve global and Brian Noble for their help in reviewing and improving thepresentation of the paper.estimation? For example, do closely-synchronized,

low-drift clocks on clients and servers help?

• Can one quantify the benefits of out-of-band Referenceschannels? For example, how much does the

[1] Ebling, M.R.presence of a low-latency, low-bandwidth channelEvaluating and Improving the Effectiveness of Caching forhelp with estimates on a parallel high-latency, high- Availability.

bandwidth channel? PhD thesis, Department of Computer Science, CarnegieMellon University, 1997 (in preparation).

4. Conclusion [2] Howard, J.H., Kazar, M.L., Menees, S.G., Nichols, D.A.,Satyanarayanan, M., Sidebotham, R.N., West, M.J.

The tension between autonomy and interdependence is Scale and Performance in a Distributed File System.intrinsic to all distibuted systems. Mobility exacerbates ACM Transactions on Computer Systems 6(1), February,

1988.this tension, making it necessary for mobile clients totolerate a far broader range of external conditions than has [3] Kistler, J.J., Satyanarayanan, M.been necessary hitherto. Disconnected Operation in the Coda File System.

ACM Transactions on Computer Systems 10(1), February,Adaptation is the key to mobility. By using local 1992.resources to reduce communication and to cope with

[4] Kistler, J.J.uncertainty, adaptation insulates users from the vagaries ofDisconnected Operation in a Distributed File System.mobile environments. Our research is exploring twoPhD thesis, Department of Computer Science, Carnegie

different approaches to adaptation: application-transparent Mellon University, May, 1993.and application-aware. Our experience with Coda confirms

[5] Kumar, P., Satyanarayanan, M.that application-transparent adaptation is indeed viable andLog-Based Directory Resolution in the Coda File System.

effective for a broad range of important applications. In In Proceedings of the Second International Conference oncircumstances where it is inadequate, our initial experience Parallel and Distributed Information Systems. Sanwith Odyssey suggests that application-aware adaptation is Diego, CA, January, 1993.the appropriate strategy. [6] Kumar, P.

Mitigating the Effects of Optimistic Replication in aIn closing, it is worth speculating on the long-termDistributed File System.impact of mobility on distributed systems. In his book

PhD thesis, School of Computer Science, Carnegie MellonMind Children, my colleague Hans Moravec draws an University, December, 1994.analogy between the seminal role of mobility in the

6

Page 18: Mobile Computing Unit 1 , 2

[7] Kumar, P., Satyanarayanan, M.Flexible and Safe Resolution of File Conflicts.In Procedings of the 1995 USENIX Technical Conference.

New Orleans, LA, January, 1995.

[8] Kung, H.T., Robinson, J.On Optimistic Methods for Concurrency Control.ACM Transaction on Database Systems 6(2), June, 1981.

[9] Lu, Q., Satyanarayanan, M.Improving Data Consistency in Mobile Computing Using

Isolation-Only Transactions.In Proceedings of the Fifth Workshop on Hot Topics in

Operating Systems. Orcas Island, WA, May, 1995.

[10] Moravec, H.Mind Children.Harvard University Press, Cambridge, MA, 1988.

[11] Mummert, L.B., Satyanarayanan, M.Large Granularity Cache Coherence for Intermittent

Connectivity.In Proceedings of the 1994 Summer USENIX Conference.

Boston, MA, June, 1994.

[12] Mummert, L.B., Ebling, M.R., Satyanarayanan, M.Exploiting Weak Connectivity for Mobile File Access.In Proceedings of the Fifteenth ACM Symposium on

Operating Systems Principles. Copper MountainResort, CO, December, 1995.

[13] Noble, B., Satyanarayanan, M.An Empirical Study of a Highly-Available File System.In Proceedings of the 1994 ACM Sigmetrics Conference.

Nashville, TN, May, 1994.

[14] Noble, B., Price, M., Satyanarayanan, M.A Programming Interface for Application-Aware

Adaptation in Mobile Computing.Computing Systems 8, Fall, 1995.

[15] Satyanarayanan, M., Kistler, J.J., Kumar, P., Okasaki,M.E., Siegel, E.H., Steere, D.C.Coda: A Highly Available File System for a Distributed

Workstation Environment.IEEE Transactions on Computers 39(4), April, 1990.

[16] Satyanarayanan, M.The Influence of Scale on Distributed File System Design.IEEE Transactions on Software Engineering 18(1),

January, 1992.

[17] Satyanarayanan, M., Kistler, J.J., Mummert, L.B., Ebling,M.R., Kumar, P., Lu, Q.Experience with Disconnected Operation in a Mobile

Computing Environment.In Proceedings of the 1993 USENIX Symposium on

Mobile and Location-Independent Computing.Cambridge, MA, August, 1993.

[18] Steere, D.C., Satyanarayanan, M.Using Dynamic Sets to Overcome High I/O Latencies

During Search.In Proceedings of the Fifth Workshop on Hot Topics in

Operating Systems. Orcas Island, WA, May, 1995.

[19] Terry, D.B.Caching Hints in Distributed Systems.IEEE Transactions in Software Engineering SE-13(1),

January, 1987.

7

Page 19: Mobile Computing Unit 1 , 2

1

CS 294-7: Challenges of Mobile Computing

Professor Randy H. KatzComputer Science Division

University of California, BerkeleyBerkeley, CA 94720-1776

© 1996

Page 20: Mobile Computing Unit 1 , 2

2

Natural Evolution of Computing

Single UserOS

Batch

Timesharing

Networking

LANs + WSs

Mobile Computing

Freedom from Collocation

MoreFlexibleResourceUsage

Page 21: Mobile Computing Unit 1 , 2

3

Research Issues in Mobile Computing

• Wireless Communications– Quality of connectivity– Bandwidth limitations

• Mobility– Location transparency– Location dependency

• Portability– Power limitations– Display, processing, storage limitations

Page 22: Mobile Computing Unit 1 , 2

4

Classes ofMobile Devices

• Display Only– InfoPad model: limited portable processing– Constrained to operation within prepared infrastructure,

like a cordless phone– Advantages with respect to power consumption, upgrade

path, lightweight, impact of lost/broken/stolen device

• Laptop Computer– Thinkpad model: significant portable processing,

operates independently of wireless infrastructure– Disadvantages: power consumption, expensive,

significant loss exposure, typically greater than 5 pounds

• Personal Digital Assistant– Somewhere between these extremes

Page 23: Mobile Computing Unit 1 , 2

5

Wireless Communications• Harsh communications environment:

– Lower bandwidth/higher latency: good enough for videoconferencing?

– Higher error rates– More frequent disconnection– Performance depends on density of nearby users but inherent

scalability of cellular/frequency reuse architecture helps

• Connection/Disconnection– Network failure is common– Autonomous operation is highly desirable

» Caching is a good idea, e.g., web cache– Asynchronous/spool-oriented applications, like mail or printing

» Trickle back data when bandwidth is available– Disconnected file systems: CODA (CMU), Ficus (UCLA)

Page 24: Mobile Computing Unit 1 , 2

6

Wireless Communications

• Low Bandwidth– Orders of magnitude differences between wide-area, in-

building wireless

• Variable Bandwidth– Applications adaptation to changing quality of

connectivity» High bandwidth, low latency: business as usual» High bandwidth, high latency: aggressive prefetching» Low bandwidth, high latency: asynchronous

operation, use caches to hide latency, predict future references/trickle in, etc. etc.

• Heterogeneous Networks– “Vertical Handoff” among colocated wireless networks

Page 25: Mobile Computing Unit 1 , 2

7

Heterogeneous“Wireless Overlay” Networks

In-Building

Campus-Area Packet Relay

Metropolitan-Area

Regional-Area

Remote Clinics

Emergency Dispatch

Hospital Campus

HospitalOperating RoomEmergency Room

Page 26: Mobile Computing Unit 1 , 2

8

Wireless Communications Bandwidths and Latencies

Contrast with 100 mbps Fast Ethernet or 155 mbps ATMPlus these bandwidths are SHARED among colocated users!

Immediate future: 20 mbps wireless in-building (European HiperLAN)64 kbps wide area (European GSM)

InfoPad: 200 mbps CDMA radio/2 mbps per user

Type ofNetwork

Bandwidth Latency Mobility Typ VideoPerformance

Typ AudioPerformance

In-Building >> 1 MbpsComm’l RF: 2 MbpsResearch IR: 50 Mbps

< 10 ms Pedestrian 2-Way ’ractiveFull Frame Rate

(Comp)

High Quality16-bit Samples

22 Khz Rate

Campus-AreaPacket Relay

Network

≈ 64 Kbps ≈ 100 ms Pedestrian Med. QualitySlow Scan

Med. QualityReduced Rate

Wide-Area 19.2 Kbps > 100 ms Vehicular Freeze Frame Asynchronous“Voice Mail”

Regional-Area(LEO/DBS/VSAT)

4.8 kbps–10+ Mbps(asymmetric)

> 100 ms VehicularStationary

Seconds/FrameFreeze Frame

Asynchronous“Voice Mail”

Page 27: Mobile Computing Unit 1 , 2

9

Wireless Communications

• Security Concerns– Authentication is critical

» Normal network point of attachment is a wall tap» Wireless access makes network attachment too easy

– Exposure to over-the-air wiretapping» Any transmitter can also be a receiver!» Some wireless networks provide secure airlinks

(e.g., CDPD)» Made more difficult by spread spectrum technologies

Page 28: Mobile Computing Unit 1 , 2

10

Mobility

• Address Migration– Existing applications send packets to a fixed network

address– Need to support dynamically changing “local” addresses

as mobile device moves through network– Mobile IP specification: home environment tracks mobile

device’s current location through registration procedure– Route optimization: exploit local caches of <global

destination node addresses, current care-of address>– Location updates:

» Forwarding» Hierarchical mobility agents

– Other routing issues: e.g., multicast

Page 29: Mobile Computing Unit 1 , 2

11

Mobility: IP RoutingBerkeley CS

Destination

Internet

TCP/UDP

IP

Link Layer

Physical Layer

IPhome

Source

Sockets

Page 30: Mobile Computing Unit 1 , 2

12

Mobility: Mobile IP

StanfordCS

Berkeley CS

Home NetworkInternet

TCP/UDP

Mobile IP

Link Layer

Physical Layer

VisitedNetwork

Mobile Host

CorrespondentHost

HomeAgent

ForeignAgent

Sockets

RouteOptimization

Page 31: Mobile Computing Unit 1 , 2

13

Mobility

• Location Dependent Services– Discovery: What services exist in my local environment?

e.g., printers, file and compute services, special local applications, etc.

– Follow me services: “Route calls to my current location,” “Migrate my workstation desktop to the nearest workstation screen”

– Information services: » Broadcast/“push” information (e.g., “Flight 59 will

depart from Gate 23”) » “Pull” information (e.g., “What gate will Flight 59

depart from?”)– Service migration: computations, caches, state, etc.

follow mobile device as it moves through the network– Privacy: what applications can track user locations?

Page 32: Mobile Computing Unit 1 , 2

14

Portability

• Low Power– Limited compute performance– Low quality displays

• Loss of Data– Easily lost– Must be conceived as being “network-integrated”

• Small User Interface– Limited real estate for keyboards– Icon intensive/handwriting/speech

• Small Local Storage– Flash memory rather than disk drive

Page 33: Mobile Computing Unit 1 , 2

15

Portability Issues

• It’s the power, stupid!!• Batteries

– Weight, volume determine lifetime» 20 W-hrs per pound» 2 pounds, 10 hours = 2 W power consumption!

– Power consumption: CV2ƒ» Reduce C by increased VLSI integration and MCM

technology» Reduce V to lower operating voltages: 5 V to 3.3V to

2.5V and below» Reduce ƒ by reducing clock frequency, standby and

suspend power modes» Intelligent operation: spin-down disk drives

Page 34: Mobile Computing Unit 1 , 2

16

Battery Technology

0 50 100 150 200 250 3000

50

100

150

200

Lighter

Smaller

NiCd

Watt-hours per liter

Wat

t-ho

urs

per

kg

NiMH

Li Ion

Li Poly

ApplePowerbooks

Dell Latitude

• Other Battery Types:– Lead Acid– Nickel Zinc– Rechargeable Alkaline-Manganese– Zinc Air

Page 35: Mobile Computing Unit 1 , 2

17

Some PDA Product Parameters

Armstad PenPad PDA 600

Apple NewtonMessage Pad

Apple Newton110 Pad

Casio Z-7000

Sharp ExpertPad

128 KBytes

640 KBytes

1 MByte

1 MByte

640 KBytes

20

20

20

7.4

20

Z-80

ARM

ARM

8086

ARM

40

6-8

50

100

20

3 AAs

4 AAAs

4 AAs

3 AAs

4 AAAs

0.9

0.9

1.25

1.0

0.9

240x320

240x336

240x320

320x256

240x336

10.4

11.2

11.8

12.4

11.2

Mem Size MHz Proc # Hrs Type lbs. Pixels sq inBatteries Display

Page 36: Mobile Computing Unit 1 , 2

18

Some PDA Product Parameters

Tandy Z-550Zoomer

AT&T EO 440Pers Comm

Portable PC

1 MByte

4-12 MBytes

4-16 MBytes

8

20

33+

8086

Hobbit

486

100

1-6

1-6

3 AAs

NiCd

NiCd

1.0

2.2

5-10

320x256

640x480

640x480

12.4

25.7

40

Mem Size MHz Proc # Hrs Type lbs. Pixels sq inBatteries Display

Page 37: Mobile Computing Unit 1 , 2

19

Typical Laptop Power Consumption

Base System (2 MB, 25 MHz)Base System (2 MB, 10 MHz)Base System (2 MB, 5 MHz)Screen backlightHard drive motorMath co-processorFloppy driveExternal keyboardLCD screenHard drive activeIC card slotAdditional Mem (per MB)Parallel portSerial port

3.650 W3.1502.8001.4251.1000.6500.5000.4900.3150.1250.1000.0500.0350.030

1.8 in PCMCIA hard driveCell telephone (active)Cell telephone (inactive)Infrared networkPCMCIA modem, 14.4 kbpsPCMCIA modem, 9.6 kbpsPCMCIA modem, 2.4 kbpsGPS receiver

0.7-0.3 W5.4000.3000.2501.3650.6250.5650.670

Page 38: Mobile Computing Unit 1 , 2

20

Laptop Power Consumption

Display Edge LightCPU/MemoryHard DiskFloppy DiskDisplayKeyboard

35%31%

10% 8% 5% 1%

Compaq LTE 386/s20

Page 39: Mobile Computing Unit 1 , 2

21

InfoPad Power Consumption

Custom Chips (5V)µProc + PLMono LCDColor LCDPen DigitizerUp/Down Radios

.175W

2.4 W2.1 W

3.0 W.075 W 1.25 W

Page 40: Mobile Computing Unit 1 , 2

22

Putting It All Together:Concepts in Mobile Computing

• Identification– Subscriber mobility: 700 phone number– Terminal mobility: mobile phone # or IP address– Application mobility

• Registration– Authentication: who are you?– Authorization: what can you do?– Allocation: how much will I give you?

• Call/Connection Establishment– Mobile Routing: Mobile IP, Cellular System HLR/VLR– Resource Reservations: Reserve channels in advance– Location Update: forward vs. hierarchy

Page 41: Mobile Computing Unit 1 , 2

23

Putting it All Together:Concepts in Mobile Computing

• Mobility– Handoff: when to do it, choice of network– Process Migration: application support infrastructure that

follows the mobile

• Privacy and Security– Authentication– Authorization– Encryption: over-the-air security

Page 42: Mobile Computing Unit 1 , 2

Single Carrier FDMA

May 18, 2008

Hyung G. Myung ([email protected])

Page 43: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 1

OutlineOutlineOutlineOutline

Introduction and Background

SC-FDMA Implementation in 3GPP LTE

Peak Power Characteristics of SC-FDMA Signals

Summary and Conclusions

Uplink Resource Scheduling in SC-FDMA Systems

Overview of SC-FDMA

Page 44: Mobile Computing Unit 1 , 2

Introduction and Background

Overview of SC-FDMA

SC-FDMA Implementation in 3GPP LTE

Peak Power Characteristics of SC-FDMA Signals

Uplink Resource Scheduling in SC-FDMA Systems

Summary and Conclusions

Page 45: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 3

3GPP Evolution3GPP Evolution3GPP Evolution3GPP Evolution

UMTS/WCDMA

HSDPA

HSUPA

HSPA+

LTE

R99

R5

R6

R7

Introduction and Background

R8

Page 46: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 4

Key Features of LTEKey Features of LTEKey Features of LTEKey Features of LTE

• Multiple access scheme

– DL: OFDMA with CP.

– UL: Single Carrier FDMA (SC-FDMA) with CP.

• Adaptive modulation and coding

– DL modulations: QPSK, 16QAM, and 64QAM

– UL modulations: QPSK and 16QAM

– Rel-6 Turbo code: Coding rate of 1/3, two 8-state constituent encoders, and a contention-free internal interleaver.

• Advanced MIMO spatial multiplexing techniques

– (2 or 4)x(2 or 4) downlink and uplink supported.

• Multi-layer transmission with up to four streams.

– Multi-user MIMO also supported.

• ARQ within RLC sublayer and Hybrid ARQ within MAC sublayer.

Introduction and Background

Page 47: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 5

Broadband Multipath ChannelBroadband Multipath ChannelBroadband Multipath ChannelBroadband Multipath Channel

• Demand for higher data rate is leading to utilization of wider transmission bandwidth.

Up to 20 MHzLTE, UMB, WiMAX3.5~4G

5 MHzcdma2000

5 MHzWCDMA3G

1.25 MHzIS-95 (CDMA)

200 kHzGSM2G

Transmission bandwidthStandard

Introduction and Background

Page 48: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 6

Broadband Multipath ChannelBroadband Multipath ChannelBroadband Multipath ChannelBroadband Multipath Channel

• Multi-path channel causes:

– Inter-symbol interference (ISI) and fading in the time domain.

– Frequency-selectivity in the frequency domain.

0 1 2 3 4 5 60

0.2

0.4

0.6

0.8

1

Time [µsec]

Am

plitu

de [

linea

r]

3GPP 6-Tap Typical Urban (TU6) Channel Delay Profile

0 1 2 3 4 50

0.5

1

1.5

2

2.5

Frequency [MHz]

Cha

nnel

Gai

n [li

near

]

Frequency Response of 3GPP TU6 Channel in 5MHz Band

Introduction and Background

- cont.

Page 49: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 7

Frequency Domain EqualizationFrequency Domain EqualizationFrequency Domain EqualizationFrequency Domain Equalization

• For broadband multi-path channels, conventional time

domain equalizers are impractical because of complexity.

– Very long channel impulse response in the time domain.

– Prohibitively large tap size for time domain filter.

• Using discrete Fourier transform (DFT), equalization can be

done in the frequency domain.

• Because the DFT size does not grow linearly with the length of the channel response, the complexity of FDE is lower than that

of the equivalent time domain equalizer for broadband

channel.

Introduction and Background

Page 50: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 8

FDEFDEFDEFDE

hx y

1 *

y h x

x h y−

= ∗∴ =

1

Y H X

X H Y−

= ⋅∴ = ⋅

Time domain

Frequency domain

Fouriertransform

Channel

- cont.

Introduction and Background

Page 51: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 9

• In DFT, frequency domain multiplication is equivalent to time domain

circular convolution.

• Cyclic prefix (CP) longer than the channel response length is

needed to convert linear convolution to circular convolution.

FDEFDEFDEFDE

CP Symbols

- cont.

Introduction and Background

Page 52: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 10

FDEFDEFDEFDE

• Most of the time domain equalization techniques can be

implemented in the frequency domain.

– MMSE equalizer, DFE, turbo equalizer, and so on.

• References

– M. V. Clark, “Adaptive Frequency-Domain Equalization and

Diversity Combining for Broadband Wireless Communications,”

IEEE J. Sel. Areas Commun., vol. 16, no. 8, Oct. 1998

– M. Tüchler et al., “Linear Time and Frequency Domain Turbo

Equalization,” Proc. IEEE 53rd Veh. Technol. Conf. (VTC), vol. 2,

May 2001

– F. Pancaldi et al., “Block Channel Equalization in the Frequency

Domain,” IEEE Trans. Commun., vol. 53, no. 3, Mar. 2005

- cont.

Introduction and Background

Page 53: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 11

Single Carrier with FDESingle Carrier with FDESingle Carrier with FDESingle Carrier with FDE

ChannelN-

point IDFT

EqualizationN-

pointDFT

SC/FDE

OFDM

DetectRemove

CP{ }nxAdd CP/ PS

* CP: Cyclic Prefix, PS: Pulse Shaping

Channel EqualizationN-

pointDFT

DetectRemove

CP

N-point IDFT

Add CP/ PS

{ }nx

Introduction and Background

Page 54: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 12

SC/FDESC/FDESC/FDESC/FDE

• SC/FDE delivers performance similar to OFDM with essentially the same overall complexity, even for long channel delay.

• SC/FDE has advantage over OFDM in terms of:

– Low PAPR.

– Robustness to spectral null.

– Less sensitivity to carrier frequency offset.

• Disadvantage to OFDM is that channel-adaptive subcarrier bit

and power loading is not possible.

- cont.

Introduction and Background

Page 55: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 13

SC/FDESC/FDESC/FDESC/FDE

• References

– H. Sari et al., “Transmission Techniques for Digital Terrestrial TV Broadcasting,” IEEE Commun. Mag., vol. 33, no. 2, Feb. 1995, pp. 100-109.

– D. Falconer et al., “Frequency Domain Equalization for Single-Carrier Broadband Wireless Systems,” IEEE Commun. Mag., vol. 40, no. 4, Apr. 2002, pp. 58-66.

• Single Carrier FDMA (SC-FDMA) is an extension of SC/FDE to accommodate multiple-user access.

- cont.

Introduction and Background

Page 56: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 14

CDMA with FDECDMA with FDECDMA with FDECDMA with FDE

• Instead of a RAKE receiver, use frequency domain equalization for channel equalization.

• Reference

– F. Adachi et al., “Broadband CDMA Techniques,” IEEE Wireless

Comm., vol. 12, no. 2, Apr. 2005, pp. 8-18.

Spreading ChannelM-

point IDFT

EqualizationM-

pointDFT

DetectRemove

CP{ }nxAdd CP/ PS

De-spreading

Introduction and Background

Page 57: Mobile Computing Unit 1 , 2

Introduction and Background

Overview of SC-FDMA

SC-FDMA Implementation in 3GPP LTE

Peak Power Characteristics of SC-FDMA Signals

Uplink Resource Scheduling in SC-FDMA Systems

Summary and Conclusions

Page 58: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 16

Single Carrier FDMASingle Carrier FDMASingle Carrier FDMASingle Carrier FDMA

• SC-FDMA is a new multiple access technique.

– Utilizes single carrier modulation, DFT-spread orthogonal

frequency multiplexing, and frequency domain equalization.

• It has similar structure and performance to OFDMA.

• SC-FDMA is currently adopted as the uplink multiple access

scheme in 3GPP LTE.

– A variant of SC-FDMA using code spreading is used in 3GPP2

UMB uplink.

– 802.16m also considering it for uplink.

Overview of SC-FDMA

Page 59: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 17

TX & RX Structure of SCTX & RX Structure of SCTX & RX Structure of SCTX & RX Structure of SC----FDMAFDMAFDMAFDMA

Subcarrier Mapping

Channel

N-point IDFT

Subcarrier De-mapping/ Equalization

M-pointDFT

DetectRemove

CP

N-point DFT

M-point IDFT

Add CP / PS

DAC/ RF

RF/ ADC

SC-FDMA:

OFDMA:

+* N < M* S-to-P: Serial-to-Parallel* P-to-S: Parallel-to-Serial

P-to-S

S-to-P

S-to-P

P-to-S

Overview of SC-FDMA

Page 60: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 18

Why Why Why Why “ Single CarrierSingle CarrierSingle CarrierSingle Carrier” “ FDMAFDMAFDMAFDMA” ????

Subcarrier Mapping

N-point DFT

M-point IDFT

Add CP / PS

DAC/ RF

Timedomain

Frequencydomain

Timedomain

“FDMA”

“Single Carrier”

P-to-S

: Sequential transmission of the symbols over a single frequency carrier.

: User multiplexing in the frequency domain.

Overview of SC-FDMA

Page 61: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 19

Subcarrier MappingSubcarrier MappingSubcarrier MappingSubcarrier Mapping

• Two ways to map subcarriers; distributed and localized.

• Distributed mapping scheme for (total # of subcarriers) =

(data block size) × (bandwidth spreading factor) is called Interleaved FDMA (IFDMA).

Distributed Localized

0X

1NX −

1X

Zeros

Zeros0Xɶ

1MX −ɶ

Zeros

0X

Zeros

1X

2X

1NX −

0Xɶ

1MX −ɶ

Zeros

Overview of SC-FDMA

Page 62: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 20

Subcarrier MappingSubcarrier MappingSubcarrier MappingSubcarrier Mapping

• Data block size (N) = 4, Number of users (Q) = 3, Number of subcarriers (M) = 12.

subcarriers

Terminal 1

Terminal 2

Terminal 3

subcarriers

Distributed Mode Localized Mode

- cont.

Overview of SC-FDMA

Page 63: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 21

Subcarrier MappingSubcarrier MappingSubcarrier MappingSubcarrier Mapping

0 0 0 0 0 0 0 0X0 X1 X2 X3

frequency

0 0 0 0 0 0 0 0X0 X1 X2 X3

{ } :kX X0 X1 X2 X3

{ } :nx x0 x1 x2 x3

DFT

21

0

, 4N j nk

Nk n

n

X x e Nπ− −

=

= =

{ }IFDMAlX ,

~

0 0 00 0 0 0 0X0 X1 X2 X3{ }DFDMAlX ,

~

{ }LFDMAlX ,

~ Current implementationin 3GPP LTE

- cont.

Overview of SC-FDMA

Page 64: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 22

Time Domain RepresentationTime Domain RepresentationTime Domain RepresentationTime Domain Representation

x0 x1 x2 x3

x0 x1 x2 x3

{ }nx

x0 x1 x2 x3 x0 x1 x2 x3

* * * * * * * *x0 x2 x0 x2

time

* * * * * * * *x0 x1 x2 x3

{ },m IFDMAQ x⋅ ɶ

{ },m DFDMAQ x⋅ ɶ

{ },m LFDMAQ x⋅ ɶ

3

, ,0

* , : complex weightk m k k mk

c x c=

= ⋅∑

Overview of SC-FDMA

Page 65: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 23

Amplitude of SCAmplitude of SCAmplitude of SCAmplitude of SC----FDMA SymbolsFDMA SymbolsFDMA SymbolsFDMA Symbols

10 20 30 40 50 600

0.1

0.2

0.3

0.4

0.5

Symbol

Am

plitu

de [l

inea

r]

IFDMALFDMADFDMA

QPSK

Overview of SC-FDMA

Page 66: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 24

SCSCSCSC----FDMA and OFDMA FDMA and OFDMA FDMA and OFDMA FDMA and OFDMA

• Similarities

– Block-based modulation and use of CP.

– Divides the transmission bandwidth into smaller subcarriers.

– Channel inversion/equalization is done in the frequency domain.

– SC-FDMA is regarded as DFT-precoded or DFT-spread OFDMA.

Overview of SC-FDMA

Page 67: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 25

SCSCSCSC----FDMA and OFDMA FDMA and OFDMA FDMA and OFDMA FDMA and OFDMA

• Difference in time domain signal

OFDMA symbol

SC-FDMA symbols*

Input data symbols

* Bandwidth spreading factor : 4time

- cont.

Overview of SC-FDMA

Page 68: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 26

SCSCSCSC----FDMA and OFDMA FDMA and OFDMA FDMA and OFDMA FDMA and OFDMA

• Different equalization/detection aspects

Subcarrier De-

mapping

Equalizer

Equalizer

Equalizer

Subcarrier De-

mapping

Detect

Detect

Detect

Equalizer IDFT DetectSC-FDMA

OFDMA DFT

DFT

- cont.

Overview of SC-FDMA

Page 69: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 27

SCSCSCSC----FDMA and DSFDMA and DSFDMA and DSFDMA and DS----CDMACDMACDMACDMA

• In terms of bandwidth expansion, SC-FDMA is very similar to

DS-CDMA system using orthogonal spreading codes.

– Both spread narrowband data into broader band.

– Time symbols are compressed into “chips” after modulation.– Spreading gain (processing gain) is achieved.

Overview of SC-FDMA

Page 70: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 28

SCSCSCSC----FDMA and DSFDMA and DSFDMA and DSFDMA and DS----CDMACDMACDMACDMA

• Conventional spreading

x1 x2 x3

1 1 1

x1 x1 x1 x1 x2 x2 x2 x2 x3 x3 x3 x3

1 1 1 1 1 1 1 1 1

Signature Sequence

Data Sequence ××××

time

x0 x0 x0 x0

1 1 1 1

x0

- cont.

Overview of SC-FDMA

Page 71: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 29

SCSCSCSC----FDMA and DSFDMA and DSFDMA and DSFDMA and DS----CDMACDMACDMACDMA

• Exchanged spreading

time

1

x0 x1 x2 x3

1 1

x0 x1 x2 x3 x0 x1 x2 x3

x0 x1 x2 x3 x0 x1 x2 x3 x0 x1 x2 x3

××××

Data Sequence

Signature Sequence

x0 x1 x2 x3

x0 x1 x2 x3

1

IFDMA

- cont.

Overview of SC-FDMA

*C. Chang, and K. Chen, “Frequency-Domain Approach to Multiuser Detection over Frequency-Selective Slowly Fading Channels,” IEEE PIMRC 2002, Lisboa, Portugal, Sep., 2002, pp. 1280-1284

Page 72: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 30

SCSCSCSC----FDMA and Other SchemesFDMA and Other SchemesFDMA and Other SchemesFDMA and Other Schemes

SC-FDMA

OFDMADS-CDMA

/FDE* DFT-based FDE

* Block-based processing & CP

* SC transmission: Low PAPR

* Time-compressed “chip” symbols

* Time-domain detection

* Subcarrier mapping: Frequency-selective scheduling

Overview of SC-FDMA

Page 73: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 31

SCSCSCSC----FDMA with Code SpreadingFDMA with Code SpreadingFDMA with Code SpreadingFDMA with Code Spreading

Subcarrier Mapping

Channel

N-point IDFT

Subcarrier De-mapping/

Equalization

M-pointDFT

Detect

Remove CP

N-point DFT

M-point IDFT

Add CP/ PS

SpreadingDe-

spreadingSC-FDMA Modulation SC-FDMA Demodulation

Overview of SC-FDMA

Page 74: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 32

SCSCSCSC----FDMA MIMOFDMA MIMOFDMA MIMOFDMA MIMO

Subcarrier Mapping

MIMOChannel

N-point IDFT

Subcarrier De-mapping

M-pointDFT

DetectRemove

CP

N-point DFT

M-point IDFT

Add CP / PS

DAC/ RF

RF/ ADC

Spatial Mapping

Subcarrier Mapping

N-point DFT

M-point IDFT

Add CP / PS

DAC/ RF

Spatial Combining

/ Equalization

N-point IDFT

Subcarrier De-mapping

M-pointDFT

DetectRemove

CPRF

/ ADC

Overview of SC-FDMA

Page 75: Mobile Computing Unit 1 , 2

Introduction and Background

Overview of SC-FDMA

SC-FDMA Implementation in 3GPP LTE

Peak Power Characteristics of SC-FDMA Signals

Uplink Resource Scheduling in SC-FDMA Systems

Summary and Conclusions

Page 76: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 34

LTE Frame StructureLTE Frame StructureLTE Frame StructureLTE Frame Structure

• Two radio frame structures defined.

– Frame structure type 1 (FS1): FDD.

– Frame structure type 2 (FS2): TDD.

• A radio frame has duration of 10 ms.

• A resource block (RB) spans 12 subcarriers over a slot duration

of 0.5 ms. One subcarrier has bandwidth of 15 kHz, thus 180

kHz per RB.

SC-FDMA Implementation in 3GPP LTE

Page 77: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 35

LTE Frame Structure Type 1LTE Frame Structure Type 1LTE Frame Structure Type 1LTE Frame Structure Type 1

• FDD frame structure

One subframe = TTI (Transmission Time Interval)

#0 #1 #2 #3 #18 #19

One slot = 0.5 ms

One radio frame = 10 ms

SC-FDMA Implementation in 3GPP LTE

Page 78: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 36

LTE Frame Structure Type 2LTE Frame Structure Type 2LTE Frame Structure Type 2LTE Frame Structure Type 2

• TDD frame structure

Subframe #0 Subframe #2 Subframe #3 Subframe #4 Subframe #5 Subframe #7 Subframe #8 Subframe #9

DwPTS GP UpPTS DwPTS GP UpPTS

One subframe = 1 ms

One half-frame = 5 ms

One radio frame = 10 ms

One slot = 0.5 ms

SC-FDMA Implementation in 3GPP LTE

Page 79: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 37

LTE Resource GridLTE Resource GridLTE Resource GridLTE Resource Grid

Slot #0 #19

One radio frame

Subcarrier (frequen

cy)

OFDM/SC-FDMA symbol (time)

RBRB scN N×

12

RBscN

=

symbN

Resource block

Resource element

RBsymb scN N= × resource elements

SC-FDMA Implementation in 3GPP LTE

Page 80: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 38

Length of CPLength of CPLength of CPLength of CP

symbN

6Extended CP

3Extended CP (∆f = 7.5 kHz)†

7Normal CP

Configuration

512 (≈ 16.67 µs) for l = 0, 1, …, 5Extended CP

1024 (≈ 33.33 µs) for l = 0, 1, 2Extended CP (∆f = 7.5 kHz) †

160 (≈ 5.21 µs) for l = 0144 (≈ 4.69 µs) for l = 1, 2, …, 6

Normal CP

CP length NCP,l [samples]Configuration

† Only in downlink

SC-FDMA Implementation in 3GPP LTE

Page 81: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 39

LTE Bandwidth/Resource ConfigurationLTE Bandwidth/Resource ConfigurationLTE Bandwidth/Resource ConfigurationLTE Bandwidth/Resource Configuration

1536011520768038401920960Samples per slot

30.7223.0415.367.683.841.92Sample rate [MHz]

204815361024512256128IDFT(Tx)/DFT(Rx)

size

120090060030018072Number of

occupied subcarriers

100755025156Number of

resource blocks (NRB)

201510531.4Channel

bandwidth [MHz]

*3GPP TS 36.104

SC-FDMA Implementation in 3GPP LTE

Page 82: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 40

LTE Bandwidth ConfigurationLTE Bandwidth ConfigurationLTE Bandwidth ConfigurationLTE Bandwidth Configuration

frequen

cy

time

300

RBRB scN N×=12

RBscN

=(7.68 MHz)

512

M

=(4.5 MHz)(180 kHz)

Resourceblock

Zeros

Zeros

1 slot

DL or UL symbol

* 5 MHz system withframe structure type 1

SC-FDMA Implementation in 3GPP LTE

Page 83: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 41

UL Overview UL Overview UL Overview UL Overview

• UL physical channels

– Physical Uplink Shared Channel (PUSCH)

– Physical Uplink Control Channel (PUCCH)

– Physical Random Access Channel (PRACH)

• UL physical signals

– Reference signal (RS)

• Available modulation for data channel

– QPSK, 16-QAM, and 64-QAM

• Single user MIMO not supported in current release.

– But it will be addressed in the future release.

– Multi-user collaborative MIMO supported.

SC-FDMA Implementation in 3GPP LTE

Page 84: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 42

UL Resource BlockUL Resource BlockUL Resource BlockUL Resource Block

1 slot (0.5 ms)

Resourceblock (RB)

Frequency

Time

One SC-FDMA symbol

Subcarrier

Referencesymbols (RS)

*PUSCH with normal CP

SC-FDMA Implementation in 3GPP LTE

Page 85: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 43

UL Physical Channel ProcessingUL Physical Channel ProcessingUL Physical Channel ProcessingUL Physical Channel Processing

Scrambling

Modulation mapping

Transform precoding

SC-FDMA signal generation

Resource element mappingSC-FDMAmodulation

DFT-precoding

IDFT operation

SC-FDMA Implementation in 3GPP LTE

Page 86: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 44

SCSCSCSC----FDMA Modulation in LTE ULFDMA Modulation in LTE ULFDMA Modulation in LTE ULFDMA Modulation in LTE UL

Serial-to-

Parallel

M-IDFT

N-DFT

Zeros

{ }0 1 1, , Nx x x −…

Parallel-to-Serial

{ }0 1 1, , Mx x x −ɶ ɶ ɶ…

Subcarrier Mapping

subcarrier

0M-1

Zeros

One SC-FDMA symbol

Localized mapping with an option of adaptive scheduling or random hopping.

SC-FDMA Implementation in 3GPP LTE

Page 87: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 45

UL Reference SignalUL Reference SignalUL Reference SignalUL Reference Signal

• Two types of UL RS

– Demodulation (DM) RS ⇒ Narrowband.

– Sounding RS: Used for UL resource scheduling ⇒ Broadband.

• RS based on Zadoff-Chu CAZAC (Constant Amplitude Zero

Auto-Correlation) polyphase sequence

– CAZAC sequence: Constant amplitude, zero circular auto-

correlation, flat frequency response, and low circular cross-

correlation between two different sequences.

2

2 , 0,1,2, , 1; for even2

( 1)2 , 0,1,2, , 1; for odd

2

k

r kj qk k L L

L

r k kj qk k L L

L

ea

e

π

π

− + = −

+ − + = −

=

* r is any integer relatively prime with L and q is any integer.

B. M. Popovic, “Generalized Chirp-like Polyphase Sequences with Optimal Correlation Properties,”IEEE Trans. Info. Theory, vol. 38, Jul. 1992, pp. 1406-1409.

SC-FDMA Implementation in 3GPP LTE

Page 88: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 46

UL RS MultiplexingUL RS MultiplexingUL RS MultiplexingUL RS Multiplexing

subcarriers

User 1

User 2

User 3

subcarriers

FDM Pilots CDM Pilots

SC-FDMA Implementation in 3GPP LTE

Page 89: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 47

UL RS MultiplexingUL RS MultiplexingUL RS MultiplexingUL RS Multiplexing

• DM RS

– For SIMO: FDM between different users.

– For SU-MIMO: CDM between RS from each antenna

– For MU-MIMO: CDM between RS from each antenna

• Sounding RS

– CDM when there is only one sounding bandwidth.

– CDM/FDM when there are multiple sounding bandwidths.

- cont.

SC-FDMA Implementation in 3GPP LTE

Page 90: Mobile Computing Unit 1 , 2

Introduction and Background

Overview of SC-FDMA

SC-FDMA Implementation in 3GPP LTE

Peak Power Characteristics of SC-FDMA Signals

Uplink Resource Scheduling in SC-FDMA Systems

Summary and Conclusions

Page 91: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 49

0 2 4 6 8 10 1210

-4

10-3

10-2

10-1

100

Pr(

PA

PR

>P

AP

R0)

PAPR0 [dB]

CCDF of PAPR: 16-QAM, Rolloff = 0.22, Nfft

= 512, Noccupied

= 128

Dotted lines: no PSDashed lines: RRC PSSolid lines: RC PS

IFDMA

DFDMA

LFDMA

OFDMA

PAPR CharacteristicsPAPR CharacteristicsPAPR CharacteristicsPAPR Characteristics

* Monte Carlo simulations (Number of iterations: > 104)* Time domain pulse shaping with 8-times oversampling* Nfft: number of total subcarriers = FFT size* Noccupied: number of occupied subcarriers = data block size* RC: raised-cosine, RRC: root raised-cosine* Rolloff factor of 0.22

Peak Power Characteristics of SC-FDMA Signals

(a) QPSK (b) 16-QAM

0 2 4 6 8 10 1210

-4

10-3

10-2

10-1

100

Pr(

PA

PR

>P

AP

R0)

PAPR0 [dB]

CCDF of PAPR: QPSK, Rolloff = 0.22, Nfft

= 512, Noccupied

= 128

Dotted lines: no PSDashed lines: RRC PSSolid lines: RC PS

IFDMA

DFDMA

LFDMA

OFDMA

*H. G. Myung, J. Lim, and D. J. Goodman, "Peak-to-Average Power Ratio of Single Carrier FDMA Signals with Pulse Shaping," IEEE PIMRC ’06, Helsinki, Finland, Sep. 2006

Page 92: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 50

PAPR CharacteristicsPAPR CharacteristicsPAPR CharacteristicsPAPR Characteristics

• PAPR and different rolloff factors

*α: rolloff factor of raised cosine pulse shaping filter

0 2 4 6 8 1010

-4

10-3

10-2

10-1

100

Pr(

PA

PR

>P

AP

R0)

PAPR0 [dB]

CCDF of PAPR: QPSK, Nfft

= 256, Noccupied

= 64

Solid lines: without pulse shapingDotted lines: with pulse shaping

IFDMA LFDMA

α=0.4α=0.6α=0.2

α=0

α=0.8

α=1

Peak Power Characteristics of SC-FDMA Signals

*H. G. Myung, J. Lim, and D. J. Goodman, "Peak-to-Average Power Ratio of Single Carrier FDMA Signals with Pulse Shaping," IEEE PIMRC ’06, Helsinki, Finland, Sep. 2006

- cont.

Page 93: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 51

PAPR of SCPAPR of SCPAPR of SCPAPR of SC----FDMA FDMA FDMA FDMA MIMOMIMOMIMOMIMO

4 6 8 10 12

10-4

10-3

10-2

10-1

100

PAPR0 [dB]

Pr(

PA

PR

>P

AP

R0)

SM

SFBC (QPSK)

SFBC (16-QAM)

TxBF(avr. & quant.)

TxBF(no avr. & no quant.)

Peak Power Characteristics of SC-FDMA Signals

*H. G. Myung, J.-L. Pan, R. Olesen, and D. Grieco, "Peak Power Characteristics of Single Carrier FDMA MIMO Precoding System", IEEE VTC 2007 Fall, Baltimore, USA, Oct. 2007

Page 94: Mobile Computing Unit 1 , 2

Introduction and Background

Overview of SC-FDMA

SC-FDMA Implementation in 3GPP LTE

Peak Power Characteristics of SC-FDMA Signals

Uplink Resource Scheduling in SC-FDMA Systems

Summary and Conclusions

Page 95: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 53

ChannelChannelChannelChannel----Dependent Scheduling (CDS)Dependent Scheduling (CDS)Dependent Scheduling (CDS)Dependent Scheduling (CDS)

• Channel-dependent scheduling

– Assign subcarriers to a user in

excellent channel condition.

• Two subcarrier mapping

schemes have advantages over

each other.

– Distributed: Frequency diversity.

– Localized: Frequency selective

gain with CDS.

Subcarriers

Frequency

User 1

User 2

Channel gain

Uplink Resource Scheduling in SC-FDMA Systems

Page 96: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 54

CDSCDSCDSCDS

*J. Lim, H. G. Myung, K. Oh, and D. J. Goodman, "Proportional Fair Scheduling of Uplink Single-Carrier FDMA Systems", IEEE PIMRC 2006, Helsinki, Finland, Sep. 2006

4 8 16 32 64 1285

10

15

20

25

30

35

40

45

Number of users

Agg

rega

te th

roug

hput

[Mbp

s]

R-LFDMA

S-LFDMAR-IFDMAS-IFDMA

4 8 16 32 64 1285

10

15

20

25

30

35

40

45

Number of users

Agg

rega

te th

roug

hput

[Mbp

s]

R-LFDMAS-LFDMAR-IFDMA

S-IFDMA

Utility: sum of user throughput Utility: sum of logarithm of user throughput

* Capacity based on Shannon’s upper bound.* Time synchronized uplink data transmission.* Perfect channel knowledge.* No feedback delay or error.

Uplink Resource Scheduling in SC-FDMA Systems

- cont.

Page 97: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 55

Uplink SCUplink SCUplink SCUplink SC----FDMAFDMAFDMAFDMA

with Adaptive Modulation and CDSwith Adaptive Modulation and CDSwith Adaptive Modulation and CDSwith Adaptive Modulation and CDS

Channel K

Resource Scheduler

Channel 2

Subcarrier

Mapping

Channel 1IDFTCP / PS

DFT

ConstellationM

apping

SC-FDMA Receiver

User 1

User 2

User K

Data flow

Control signal flow

Mobile terminals Base station

Uplink Resource Scheduling in SC-FDMA Systems

Page 98: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 56

Simulation ResultsSimulation ResultsSimulation ResultsSimulation Results

• Aggregate throughput vs. feedback delay

0 1 2 3 4 52

4

6

8

10

12

14

16

18

Feedback delay [ms]

Agg

rega

te th

roug

hpu

t [M

bps]

mobile speed = 3 km/h (fD

= 5.6 Hz)

LFDMA: StaticLFDMA: CDSIFDMA: StaticIFDMA: CDS

0 1 2 3 4 52

4

6

8

10

12

14

16

18

Feedback delay [ms]

Agg

rega

te t

hrou

ghpu

t [M

bps

]

mobile speed = 60 km/h (fD = 111 Hz)

LFDMA: Static

LFDMA: CDSIFDMA: Static

IFDMA: CDS

* Carrier frequency = 2 GHz

* K = 64 total number of users, N = 16 subcarriers per chunk, Q = 16 total number of chunks

* Utility: sum of user throughput

Uplink Resource Scheduling in SC-FDMA Systems

*H. G. Myung, K. Oh, J. Lim, and D. J. Goodman, "Channel-Dependent Scheduling of an Uplink SC-FDMA System with Imperfect Channel Information," IEEE WCNC 2008, Las Vegas, USA, Mar. 2008

Page 99: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 57

Simulation ResultsSimulation ResultsSimulation ResultsSimulation Results

• Aggregate throughput vs. mobile speed

0 20 (37) 40 (74) 60 (111) 80 (148)2

4

6

8

10

12

14

16

18

Mobile speed [km/h] (Doppler [Hz])

Ag

greg

ate

thro

ugh

put [

Mb

ps]

Feedback delay = 3 ms

LFDMA: Static

LFDMA: CDSIFDMA: StaticIFDMA: CDS

Uplink Resource Scheduling in SC-FDMA Systems

- cont.

*H. G. Myung, K. Oh, J. Lim, and D. J. Goodman, "Channel-Dependent Scheduling of an Uplink SC-FDMA System with Imperfect Channel Information," IEEE WCNC 2008, Las Vegas, USA, Mar. 2008.

Page 100: Mobile Computing Unit 1 , 2

Introduction and Background

Overview of SC-FDMA

SC-FDMA Implementation in 3GPP LTE

Peak Power Characteristics of SC-FDMA Signals

Uplink Resource Scheduling in SC-FDMA Systems

Summary and Conclusions

Page 101: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 59

Summary and ConclusionsSummary and ConclusionsSummary and ConclusionsSummary and Conclusions

• SC-FDMA is a new single carrier multiple access technique

which has similar structure and performance to OFDMA.

– Currently adopted for uplink multiple access scheme for 3GPP

LTE.

• Two types of subcarrier mapping, distributed and localized,

give system design flexibility to accommodate either

frequency diversity or frequency selective gain.

• A salient advantage of SC-FDMA over OFDM/OFDMA is low

PAPR.

– Efficient transmitter and improved cell-edge performance.

• Pulse shaping as well as subcarrier mapping scheme has a

significant impact on PAPR.

Summary and Conclusions

Page 102: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 60

References and ResourcesReferences and ResourcesReferences and ResourcesReferences and Resources

• H. G. Myung, J. Lim, & D. J. Goodman, “Single Carrier FDMA for Uplink Wireless Transmission,” IEEE Vehic. Tech. Mag., vol. 1, no. 3, Sep. 2006

• H. Ekström et al., “Technical Solutions for the 3G Long-Term Evolution,” IEEE Commun. Mag., vol. 44, no. 3, Mar. 2006

• D. Falconer et al., “Frequency Domain Equalization for Single-Carrier Broadband Wireless Systems,” IEEE Commun. Mag., vol. 40, no. 4, Apr. 2002

• H. Sari et al., “Transmission Techniques for Digital Terrestrial TV Broadcasting,” IEEE Commun. Mag., vol. 33, no. 2, Feb. 1995

Summary and Conclusions

Page 103: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 61

References and ResourcesReferences and ResourcesReferences and ResourcesReferences and Resources

• LTE Spec– http://www.3gpp.org/ftp/Specs/html-info/36-series.htm

• SC-FDMA resource page– http://hgmyung.googlepages.com/scfdma

• Comprehensive list of SC-FDMA papers– http://hgmyung.googlepages.com/scfdma2

Summary and Conclusions

- cont.

Page 104: Mobile Computing Unit 1 , 2

Single Carrier FDMA | Hyung G. Myung 62

Final WordFinal WordFinal WordFinal Word

SC-FDMA Low PAPR�

Summary and Conclusions

Page 105: Mobile Computing Unit 1 , 2

Thank you!

May 18, 2008

Hyung G. Myung ([email protected])

Page 106: Mobile Computing Unit 1 , 2
Page 107: Mobile Computing Unit 1 , 2
Page 108: Mobile Computing Unit 1 , 2
Page 109: Mobile Computing Unit 1 , 2
Page 110: Mobile Computing Unit 1 , 2
Page 111: Mobile Computing Unit 1 , 2
Page 112: Mobile Computing Unit 1 , 2
Page 113: Mobile Computing Unit 1 , 2
Page 114: Mobile Computing Unit 1 , 2
Page 115: Mobile Computing Unit 1 , 2
Page 116: Mobile Computing Unit 1 , 2
Page 117: Mobile Computing Unit 1 , 2
Page 118: Mobile Computing Unit 1 , 2
Page 119: Mobile Computing Unit 1 , 2

Evolution of Mobile Communications: from 1G to 4G

Vasco Pereira and Tiago Sousa Department of Informatics Engineering of the University of Coimbra

{vasco,tmas}@dei.uc.pt

Abstract

Today, mobile communications play a central role in the voice/data network arena. With the deployment of mass scale 3G just around the corner, new directions are already being researched. In this paper we address the evolution of mobile communications, from its first generation, 1G, to the latest 3G and give a glimpse of foreseeable future of 4G. 1. Introduction

From the early analog mobile generation (1G) to the last implemented third generation (3G) the paradigm has changed. The new mobile generations do not pretend to improve the voice communication experience but try to give the user access to a new global communication reality. The aim is to reach communication ubiquity (every time, everywhere) and to provide users with a new set of services.

The growth of the number of mobile subscribers over the last years led to a saturation of voice-oriented wireless telephony. From a number of 214 million subscribers in 1997 to 1.162 millions in 2002 [1], it is predicted that by 2010 there will be 1700 million subscribers worldwide [2] (see Figure 1). It is now time to explore new demands and to find new ways to extend the mobile concept. The first steps have already been taken by the 2.5G, which gave users access to a data network (e.g. Internet access, MMS - Multimedia Message Service). However, users and applications demanded more communication power. As a response to this demand a new generation with new standards has been developed - 3G. In spite of the big initial euphoria that evolved this technology, only one 3G network exists in commercial use today. This network has been deployed in Japan in 2001 using international standard IMT-2000, with great success.

Figure 1 – Evolution of mobile and fixed subscribers [3]

In the last years, benefiting from 3G constant delays, many new mobile technologies were deployed with great success (e.g. Wi-Fi). Now, all this new technologies (e.g. UMTS, Wi-Fi, Bluetooth) claim for a convergence that can only be achieved by a new mobile generation. This new mobile generation to be deployed must work with many mobile technologies while being transparent to the final user.

Page 120: Mobile Computing Unit 1 , 2

2. The first mobile generations (1G to 2.5G) The first operational cellular communication system was deployed in the Norway in 1981 and was

followed by similar systems in the US and UK. These first generation systems provided voice transmissions by using frequencies around 900 MHz and analogue modulation.

The second generation (2G) of the wireless mobile network was based on low-band digital data signaling. The most popular 2G wireless technology is known as Global Systems for Mobile Communications (GSM). The first GSM systems used a 25MHz frequency spectrum in the 900MHz band. FDMA (Frequency Division Multiple Access), which is a standard that lets multiple users access a group of radio frequency bands and eliminates interference of message traffic, is used to split the available 25MHz of bandwidth into 124 carrier frequencies of 200 kHz each. Each frequency is then divided using a TDMA (Time Division Multiple Access) scheme into eight timeslots and allows eight simultaneous calls on the same frequency. This protocol allows large numbers of users to access one radio frequency by allocating time slots to multiple voice or data calls. TDMA breaks down data transmission, such as a phone conversation, into fragments and transmits each fragment in a short burst, assigning each fragment a time slot. With a cell phone, the caller does not detect this fragmentation.

Today, GSM systems operate in the 900MHz and 1.8 GHz bands throughout the world with the exception of the Americas where they operate in the 1.9 GHz band. Within Europe, the GSM technology made possible the seamless roaming across all countries.

While GSM technology was developed in Europe, CDMA (Code Division Multiple Access) technology was developed in North America. CDMA uses spread spectrum technology to break up speech into small, digitized segments and encodes them to identify each call. CDMA distinguishes between multiple transmissions carried simultaneously on a single wireless signal. It carries the transmissions on that signal, freeing network room for the wireless carrier and providing interference-free calls for the user. Several versions of the standard are still under development. CDMA promises to open up network capacity for wireless carriers and improve the quality of wireless messages and users' access to the wireless airwaves. Whereas CDMA breaks down calls on a signal by codes, TDMA breaks them down by time. The result in both cases is an increased network capacity for the wireless carrier and a lack of interference for the caller. While GSM and other TDMA-based systems have become the dominant 2G wirelesses technologies, CDMA technology are recognized as providing clearer voice quality with less background noise, fewer dropped calls, enhanced security, greater reliability and greater network capacity.

The Second Generation (2G) wireless networks mentioned above are also mostly based on circuit-switched technology, are digital and expand the range of applications to more advanced voice services. 2G wireless technologies can handle some data capabilities such as fax and short message service at the data rate of up to 9.6 kbps, but it is not suitable for web browsing and multimedia applications.

So-called ‘2.5G’ systems recently introduced enhance the data capacity of GSM and mitigate some of its limitations. These systems add packet data capability to GSM networks, and the most important technologies are GPRS (General Packet Radio Service) and WAP (Wireless Application Protocol). WAP defines how Web pages and similar data can be passed over limited bandwidth wireless channels to small screens being built into new mobile telephones. At the next lower layer, GPRS defines how to add IP support to the existing GSM infrastructure. GPRS provides both a means to aggregate radio channels for higher data bandwidth and the additional servers required to off-load packet traffic from existing GSM circuits. It supplements today's Circuit Switched Data and Short Message Service. GPRS is not related to GPS (the Global Positioning System), a similar acronym that is often used in mobile contexts. Theoretical maximum speeds of up to 171.2 kilobits per second (kbps) are achievable with GPRS using all eight timeslots at the same time. This is about ten times as fast as current Circuit Switched Data services on GSM networks. However, it should be noted that it is unlikely that a network operator will allow all timeslots to be used by a single GPRS user. Additionally, the initial GPRS terminals (phones or modems) are only supporting only one to four timeslots. The bandwidth available to a GPRS user will therefore be limited.

All these wireless technologies are summarized in Table 1.

Page 121: Mobile Computing Unit 1 , 2

Table 1 – Transport Technologies [4]

Transport Technology

Description Typical Use / Data Transmission Speed

Pros/cons

TDMA Time Division Multiple Access is 2G technology

Voice and data Up to 9.6kbps

Low battery consumption, but transmission is one-way, and its speed pales next to 3G technologies

GSM Global System for Mobile Communications is a 2G digital cell phone technology

Voice and data. This European system uses the 900MHz and 1.8GHz frequencies. In the United States it operates in the 1.9GHz PCS band up to 9.6kbps

Popular around the globe. Worldwide roaming in about 180 countries, but GSM's short messaging service (GSM-SMS) only transmits one-way, and can only deliver messages up to 160 characters long

GPRS General Packet Radio Service is a 2.5G network that supports data packets

Data Up to 115kbps; the AT&T Wireless GPRS network will transmit data at 40kbps to 60kbps

Messages not limited to 160 characters, like GSM SMS

EDGE Enhanced Data GSM Environment is a 3G digital network

Data Up to 384kbps May be temporary solution for operators unable to get W-CDMA licenses

CDMA Code Division Multiple Access is a 2G technology developed by Qualcomm that is transitioning to 3G

Although behind TDMA in number of subscribers, this fast-growing technology has more capacity than TDMA

W-CDMA (UMTS)

Wideband CDMA (also known as Universal Mobile Telecommunications System-UMTS) is 3G technology. On November 6, 2002, NTT DoCoMo, Ericsson, Nokia, and Siemens agreed on licensing arrangements for W-CDMA, which should set a benchmark for royalty rates

Voice and data. UMTS is being designed to offer speeds of at least 144kbps to users in fast-moving vehicles Up to 2Mbps initially. Up to 10Mbps by 2005, according to designers

Likely to be dominant outside the United States, and therefore good for roaming globally. Commitments from U.S. operators are currently lacking, though AT&T Wireless performed UMTS tests in 2002. Primarily to be implemented in Asia-Pacific region

CDMA2000 1xRTT

A 3G technology, 1xRTT is the first phase of CDMA2000

Voice and data Up to 144kbps

Proponents say migration from TDMA is simpler with CDMA2000 than W-CDMA, and that spectrum use is more efficient. But W-CDMA will likely be more common in Europe

CDMA2000 1xEV-DO

Delivers data on a separate channel Data Up to 2.4Mbps (see CDMA2000 1xRTT above)

CDMA2000 1xEV-DV

Integrates voice and data on the same channel

Voice and data Up to 2.4Mbps (see CDMA2000 1xRTT above)

Meanwhile, developers are focusing on the much-hyped third generation (3G) of wireless systems.

3. Third mobile generation networks (3G)

All 2G wireless systems are voice-centric. GSM includes short message service (SMS), enabling text

messages of up to 160 characters to be sent, received and viewed on the handset. Most 2G systems also support some data over their voice paths, but at painfully slow speeds usually 9.6 Kb/s or 14.4 Kb/s. So in the world of 2G, voice remains king while data is already dominant in wireline communications. And, fixed or wireless, all are affected by the rapid growth of the Internet.

Planning for 3G started in the 1980s. Initial plans focused on multimedia applications such as videoconferencing for mobile phones. When it became clear that the real killer application was the Internet,

Page 122: Mobile Computing Unit 1 , 2

3G thinking had to evolve. As personal wireless handsets become more common than fixed telephones, it is clear that personal wireless Internet access will follow and users will want broadband Internet access wherever they go.

Today's 3G specifications call for 144 Kb/s while the user is on the move in an automobile or train, 384 Kb/s for pedestrians, and ups to 2 Mb/s for stationary users. That is a big step up from 2G bandwidth using 8 to 13 Kb/s per channel to transport speech signals.

The second key issue for 3G wireless is that users will want to roam worldwide and stay connected. Today, GSM leads in global roaming. Because of the pervasiveness of GSM, users can get comprehensive coverage in Europe, parts of Asia and some U.S. coverage. A key goal of 3G is to make this roaming capacity universal.

A third issue for 3G systems is capacity. As wireless usage continues to expand, existing systems are reaching limits. Cells can be made smaller, permitting frequency reuse, but only to a point. The next step is new technology and new bandwidth.

International Mobile Telecommunications-2000 (IMT-2000) is the official International Telecommunication Union name for 3G and is an initiative intended to provide wireless access to global telecommunication infrastructure through both satellite and terrestrial systems, serving fixed and mobile phone users via both public and private telephone networks. GSM proponents put forward the universal mobile telecommunications system (UMTS), an evolution of GSM, as the road to IMT-2000. Alternate schemes have come from the U.S., Japan and Korea. Each scheme typically involves multiple radio transmission techniques in order to handle evolution from 2G. Agreeing on frequency bands for IMT-2000 has been more difficult and the consensus included five different radio standards and three widely different frequency bands. They are now all part of IMT-2000. To roam anywhere in this "unified" 3G system, users will likely need a quintuple-mode phone able to operate in an 800/900 MHz band, a 1.7 to 1.9 GHz band and a 2.5 to 2.69 GHz band.

Third-generation wireless also requires new infrastructure. There are two mobility infrastructures in wide use. GSM has the mobile access protocol, GSM-MAP. The North American infrastructure uses the IS-41 mobility protocol. These protocol sets define the messages passed between home location registers and visitor location registers when locating a subscriber and the messages needed to deal with hand-offs as a subscriber moves from cell to cell. 3G proponents have agreed on an evolution path so that existing operators, running on either a GSM-MAP or an IS-41 infrastructure, can interoperate. But the rest of the landline infrastructure to support IMT-2000 will be in flux in the near future. The IMT-2000 family is illustrated in figure 3.

Figure 2 – IMT-2000 family [5]

IMT-DS (Direct Spread)

UTRA FDD (W-CDMA)

3GPP

IMT-TC (Time Code) UTRA TDD (TD-CDMA);TD-SCDMA

3GPP

IMT-MC (Multi

Carrier)

cdma2000 3GPP2

IMT-SC (Single Carrier)

UWC-136 (EDGE)

UWCC/3GPP

IMT-FT (Freq. Time)

DECT

ETSI

GSM (MAP)

ANSI-41(IS-634)

IP-Network IMT-2000 Core Network ITU-T

IMT-2000 Radio Access ITU-R

Flexible assignment of Core Network and Radio Access

Initial UMTS (R99 w/ FDD)

Interface for Internetworking

Page 123: Mobile Computing Unit 1 , 2

As show in table 1, UMTS use the radio technology called W-CDMA (Wideband Code Division

Multiple Access). W-CDMA is characterized by the use of a wider band than CDMA. W-CDMA has additional advantages of high transfer rate, and increased system capacity and communication quality by statistical multiplexing. W-CDMA utilizes efficiently the radio spectrum to provide a maximum data rate of 2 Mbps.

With the advent of mobile Internet access, suddenly the circuit-based backhaul network from the base station and back has to significantly change. 3G systems are IP-centric and will justify an all-IP infrastructure.

There will be no flip to 3G, but rather an evolution and, because of the practical need to re-use the existing infrastructure and to take advantage of new frequency bands as they become available, that evolution will look a bit different depending on where you are. The very definition of 3G is now an umbrella, not a single standard, however, the industry is moving in the right direction towards a worldwide, converged, network. Meanwhile, ever-improving DSPs will allow multi-mode, multi-band telephones that solve the problem of diverse radio interfaces and numerous frequency bands. When one handset provides voice and data anywhere in the world, that will be 3G no matter what is running behind the scenes. 4. Future mobile generation networks (4G)

The objective of the 3G was to develop a new protocol and new technologies to further enhance the mobile experience. In contrast, the new 4G framework to be established will try to accomplish new levels of user experience and multi-service capacity by also integrating all the mobile technologies that exist (e.g. GSM - Global System for Mobile Communications, GPRS - General Packet Radio Service, IMT-2000 - International Mobile Communications, Wi-Fi - Wireless Fidelity, Bluetooth).

In spite of different approaches, each resulting from different visions of the future platform currently under investigation, the main objectives of 4G networks can be stated in the following properties:

• Ubiquity; • Multi-service platform; • Low bit cost; Ubiquity means that this new mobile networks must be available to the user, any time, anywhere. To

accomplish this objective services and technologies must be standardized in a worldwide scale. Furthermore the services to be implemented should be available not only to humans as have been the rule in previous systems, but also to everything that needs to communicate. In this new world we can find transmitters in our phone to enable voice and data communications (e.g. high bandwidth Internet access, multimedia transmissions), in our wrist, to monitor our vital signs, in the packages we send, so that we always know their location, in cars, to always have their location and receive alerts about an accident, in remote monitor/control devices, in animals to track their state or location, or even in plants. Based on this view, NTT DoCoMo, that has already a wide base of 3G mobile users, estimates the number of mobile communication terminals to grow in Japan from the actual 82.2 million to more than 500 million units by 2010. [6]

A multi-service platform is an essential property of the new mobile generation, not only because it is

the main reason for user transition, but also because it will give telecommunication operators access to new levels of traffic. Voice will loose its weight in the overall user bill with the raise of more and more data services.

Low-bit cost is an essential requirement in a scenario where high volumes of data are being transmitted

over the mobile network. With the actual price per bit, the market for the new high demanding applications, which transmit high volumes of data (e.g. video), is not possible to be established. According to [6] cost per bit should be between 1/10 and 1/100 of 3G systems.

To achieve the proposed goals, a very flexible network that aggregates various radio access

technologies, must be created. This network must provide high bandwidth, from 50-100 Mbps for high mobility users, to 1Gbps for low mobility users, technologies that permit fast handoffs, an efficient delivery

Page 124: Mobile Computing Unit 1 , 2

system over the different wireless technologies available, a method of choosing the wireless access from the available ones. Also necessary is a QoS framework that enables fair and efficient medium sharing among users with different QoS requirements, supporting the different priorities of the services to be deployed. The core of this network should be based in Internet Protocol version 6 – IPv6, the probable convergence platform of future services (IPv4 does not provide a suitable number of Internet addresses). The network should also offer sufficient reliability by implementing a fault-tolerant architecture and failure recovering protocols.

4.1. Migrating to 4G

The fact that 4G mobile networks intend to integrate almost every wireless standard already in use,

enabling its simultaneous use and interconnection poses many questions not yet answered. The research areas that present key challenges to migrate current systems to 4G are many but can be summarized in the following: Mobile Station, System and Service. [7]

To be able to use 4G mobile networks a new type of mobile terminals must be conceived. The terminals to be adopted must adapt seamless to multiple wireless networks, each with different protocols and technologies. Auto reconfiguration will also be needed so that terminals can adapt to the different services available. This adaptation may imply that it must download automatically configuration software from networks in range. Moreover terminals must be able to choose from all the available wireless networks the one to use with a specific service. To do this it must be aware of specifications of all the networks in terms of bandwidth, QoS supported, costs and respect to user preferences.

Terminal mobility will be a key factor to the success of 4G networks. Terminals must be able to provide wireless services anytime, everywhere. This implies that roaming between different networks must be automatic and transparent to the user. There are two major issues in terminal mobility, location management and handoff management [7]. Location management deals with tracking user mobility, and handling information about original, current and (if possible) future cells. Moreover it must deal with authentication issues and QoS assurances. Handoff management primary objective is to maintain the communications while the terminal crosses wireless network boundaries. In addition, 4G networks, in opposition to the other mobile generations, must deal with vertical and horizontal handoffs, i.e., a 4G mobile client may move between different types of wireless networks (e.g. GSM and Wi-Fi) and between cells of the same wireless network (e.g. moving between adjacent GSM cells). Furthermore, many of the services available in this new mobile generation like videoconference have restrict time constraints and QoS needs that must not be perceptible affected by handoffs. To avoid these problems new algorithms must be researched and a prevision of user mobility will be necessary, so as to avoid broadcasting at the same time to all adjacent antennas what would waste unnecessary resources. Another major problem relates to security, since 4G pretends to join many different types of mobile technologies. As each standard has its own security scheme, the key to 4G systems is to be highly flexible.

Services also pose many questions as 4G users may have different operators to different services and, even if they have the same operator, they can access data using different network technologies. Actual billing using flat rates, time or cost per bit fares, may not be suitable to the new range of services. At the same time it is necessary that the bill is well understood by operator and client. A broker system would be advisable to facilitate the interaction between the user and the different service providers.

Another challenge is to know, at each time, where the user is and how he can be contacted. This is very important to mobility management. A user must be able to be reached wherever he is, no matter the kind of terminal that is being used. This can be achieved in various ways one of the most popular being the use of a mobile-agent infrastructure. In this framework, each user has a unique identifier served by personal mobile agents that make the link from users to Internet.

5. Conclusion

In this paper we present the evolution of mobile communications through all its generations. From the

initial speech vocation to an IP-based data network, several steps were made. From the analog voice centric first generation to the digital second generation, the goal was to enhance the voice experience of a user, by improving the quality of the communication while using more efficiently the installed capacity. At the same time the enhanced mobility provided by seamless handover and the additional data communications

Page 125: Mobile Computing Unit 1 , 2

capacity (although very small) advanced and opened the doors to future developments. Some of the developments was brought by generation 2.5 namely by GPRS, which improved data communications by supporting IP in the GSM infrastructure. With the third generation the goal changed from voice-centric to data-centric. Moreover total mobility became an objective to pursuit. In this generation it is possible to combine voice, multimedia applications and mobility in a never experienced manner.

However, the global mobility, while an important objective, was never really reached. At the same time new applications demand more bandwidth and lower costs. The newcomer fourth-generation tries to address this problem by integrating all different wireless technologies.

In spite of all the evolving technologies the final success of new mobile generations will be dictated by the new services and contents made available to users. These new applications must meet user expectations, and give added value over existing offers.

6. References [1] “Mobile cellular, subscribers per 100 people”, International Telecommunication Union Statistics, 2002 http://www.itu.int/ITU-D/ict/statistics/at_glance/cellular02.pdf [2] Kim, Y., Jeong, B.J., Chung, J., Hwang, C., Ryu, J.S., Kim, K., Kim, Y.K., “Beyond 3G: Vision, Requirements, and Enabling Technologies”, IEEE Communications Magazine, March 2003, pp. 120-124 [3] ITU-R PDNR WP8F, “Vision, Framework and Overall Objectives of the Future Development of IMT-2000 and Systems beyond IMT-2000,” 2002. [4] “2G – 3G Cellular Wireless data transport terminology”, Arc Electronics www.arcelect.com/2G-3G_Cellular_Wireless.htm [5] Schiller, J., “Mobile Communications”, slides http://www.jochenschiller.de/ [6] Tachikawa, Keiji, “A perspective on the Evolution of Mobile Communications”, IEEE Communications Magazine, October 2003, pp. 66-73 [7] Hui, Suk Yu, and Yeung, Kai Hau, “Challenges in the Migration to 4G Mobile Systems”, IEEE Communications Magazine, December 2003, pp. 54-59

Page 126: Mobile Computing Unit 1 , 2

Location Management in Wireless Cellular NetworksTravis Keshav -- [email protected]

Abstract

Cellular networks are spreading rapidly, leading to overloaded systems, unacceptable delays, and increasing computational costs due to inefficient Location Management (LM). This paper evaluates both past and present cellular practices and shortcomings in LM, presents recent theoretical proposals to overcome current flaws, indicates probable trends towards future cellular LM, and covers the E911 service and its use of LM.

See Also: [Cowling04], [Giner04].

Keywords: Location Management in Wireless Cellular Networks, Location Management, Cellular Networks, LM, Mobility Management, Enhanced 911, E911, Dynamic Location Management, Static Location Management, Paging, Hand-off Velocity Prediction, HVP, Location Update, Location Area, Set-Covering Based Location area Planning, SCLBP

Table Of Contents

1. Introduction 2. Static Location Management

o 2.1 Static Location Updateo 2.2 Static Location Areaso 2.3 Static Current Standards/Implementation

3. Location Management Parameters/Analysiso 3.1 Pagingo 3.2 User Mobility

4. Dynamic Location Managemento 4.1 Dynamic Location Updateo 4.2 Dynamic Location Areaso 4.3 User Characterizationo 4.4 Cost Analysis

5. Dynamic LM Analysis and Developmentso 5.1 Static/Dynamic Location Management Comparisono 5.2 Further Cowling Theorieso 5.3 Hand-off Velocity Prediction Location Managemento 5.4 Set-Covering Based Location Area Planningo 5.5 Triple Layer Location Management

Page 127: Mobile Computing Unit 1 , 2

o 5.6 Additional Dynamic LM Theories 6. Future LM Developments and E911

o 6.1 Location Tracking Evolutiono 6.2 Location Management in 3Go 6.3 E911

7. Conclusion 8. References 9. List of Acronyms

1.0 Introduction

Cells in a network are grouped into Location Areas (LAs). Users can move within these LAs, updating their location with the network based upon some predefined standard. When a user receives a call, the network must page cells within the LA (also referred to as polling) to find that user as quickly as possible.

This creates the dynamics behind much of Location Management (LM), and many of the reports and theories discussed within this paper. The network can require more frequent Location Updates (LUs), in order to reduce polling costs, but only by incurring increased time and energy expenditures from all the updates. Conversely, the network could only require rare LUs, storing less information about users to reduce computational overhead, but at a higher polling cost. Additionally, LAs themselves can be optimized in order to create regions that require less handoff and quicker locating of users. The goal of LM is to find a proper balance between all of these important considerations.

This paper discusses LM schemes, from past and current static LM methods, to current progress and advances in dynamic LM. Much emphasis is placed on the many theoretical implementations of dynamic LM. Also discussed are future LM developments and the Enhanced 911 (E911) service, a real-world example demonstrating applications of LM and its importance.

2.0 Static Location Management

Presently, most LM schemes are static, where LUs occur on either periodic intervals or upon every cell change. However, static LAs incur great costs with the ping-pong effect. When users repetitively move between two or more LAs, updates are continuously performed unnecessarily. In these static LAs, cells are constant in size, uniform, and identical for each user. The current static LM standards are IS-41 and GSM MAP, which use a hierarchical database structure and are described in 2.3.

2.1 Static Location Update

Page 128: Mobile Computing Unit 1 , 2

Three simple static Location Update schemes exist in static LM, being always-update, never-update, and static interval-based. The third of these is the most commonly used in practical static LM systems.

One scheme involves the user updating its location upon every inter-cell movement, and is named always-update. This will incur significant energy and computational costs to both the network and the user, especially to the most mobile users. This may be particularly wasteful, as if a user makes frequent, quick movements within an LA, beginning and ending at the same location, many LUs will occur that might be unnecessary, especially if few or no calls are incoming. However, the network will always be able to quickly locate a user upon an incoming call, and extensive paging will not be necessary.

The converse method would be to never require the user to inform the network of inter-cell movements, only updating on LA changes, and is named never-update. In this scheme, resources are saved as constant updates are not required, but paging costs rise substantially. This occurs as every cell within the user’s LA may need to be checked during paging due to the lack of information, which causes excessive overhead for users with a high incoming call frequency.

These two schemes are generally unused in real-world systems, but help to provide an illustration to network administrators as to the costs of LM, the problems that occur when thoughtless LU methods are used, and a baseline that every newly developed LU scheme must show improvements over.

The final static LM technique discussed requires each user within the network to update at static, uniform intervals. This attempts to provide a balance between the extremes of the previous schemes, as the network will neither be overwhelmed with LUs nor wholly unaware of users’ locations. However, users with rapid rates of movement may move into new LAs between updates, which causes locating that user to be very difficult. Conversely, an inactive user will not move at all, but will still regularly be sending unneeded LUs. [Cowling04] While LA optimization could mitigate these problems, as discussed in the following section, such improvements are impossible under static LM schemes where LAs are uniform and constant.

2.2 Static Location Areas

Location Areas in static LM are themselves static as well. They are effectively the easiest solution to physically dividing a network, providing the same LA to every user, without any customization.

These function as static LU schemes do: suboptimally, but sufficiently for most networks. However, their perhaps most egregious flaw is their vulnerability to the ping-pong effect. Given that these static LAs are set and cannot change, users may repetitively move between two or more adjacent LAs, which for many LU schemes will cause a large number of LUs with a small or zero absolute cell distance moved. Figure 1 demonstrates

Page 129: Mobile Computing Unit 1 , 2

such an example, where the user may simply be moving around a city block, but may be incurring an LU on every inter-cell movement due to each movement crossing an LA boundary.

The optimal static LA size algorithm, which uses a Fluid-Flow mobility model, states that in a network with uniform cell size, cell shape, and user movement speed, the ideal number of cells per LA is

[Giner04]

where R is the cell radius, v is the speed of a user, Clu is the LU cost, and Cpg is the paging cost per call. This equation states that high user speed and LU costs indicate that having a large number of cells per LA is preferable, while a large cell radius and high paging costs imply that a small number of cells per LA is optimal. Obviously, users are not homogeneous, but with sufficient data collection and analysis of aggregate user movement patterns, Fluid-Flow is a relatively successful method to optimize static LAs.

As will later be discussed, dynamic LA schemes can both decrease occurrence of ping-pong effects and provide more flexible and personalized LAs, albeit at their own costs. However, as would logically follow, current static LM standards and schemes do not use these modifications, instead being implemented as seen in the following section.

2.3 Static LM Standards/Implementation

Page 130: Mobile Computing Unit 1 , 2

In current cellular telephone usage, there are two common standards: the Electronic and Telephone Industry Associations (EIA/TIA) Interim Standard IS-41, and the Global System for Mobile Communications (GSM) Mobile Application Part (MAP). Both of these are quite similar, having two main tasks of Location Update and Call Delivery.

Currently, a two level hierarchical database scheme is used. The Home Location Register (HLR) contains the records of all users’ services, in addition to location information for an entire network, while Visitor Location Registers (VLRs) download data from the HLR concerning current users within the VLR’s specific service areas. Each LA has one VLR servicing it, and each VLR is designed to only monitor one LA. Additionally, each VLR is connected to multiple Mobile Switching Centers (MSCs), which operate in the transport network in order to aid in handoffs and to locate users more easily. For LUs, IS-41 and GSM both use a form of the always-update method. All inter-cell movements cause an update to the VLR, while the HLR does not need any modification, as both the MSC and VLR that the user resides in remains constant. Inter-MSC movements within the same LA cause the VLR to be updated with the new cell address, and also cause an update to the HLR to modify the stored value of the user's MSC. Finally, Inter-VLR movements cause the new VLR to create a record for the user, as well as causing an update to the HLR where both MSC and VLR fields are updated. After this occurs, the old VLR's record for the user is removed. Figure 2 displays a symbolic high-level view of the HLR/VLR architecture, as well as demonstrating the methods of communication on a call. [Giner04]

In Call Delivery, the system database is queried to determine the LA or registration area

Page 131: Mobile Computing Unit 1 , 2

of the user. This is split into two steps; a fixed network interrogation is performed to find a region of cells containing the target, in which the HLR is queried to obtain the VLR of the called user. Next, paging is used to poll cells within this region until the user is found. Currently, a system called Signaling System 7 (SS7) is used to transmit these locating messages. In this system, Signal Transfer Points (STPs) route messages through the network (as the HLR), while Service Control Points (SCPs) maintain the databases and information (as VLRs), and Service Switching Points (SSPs) help route calls (as MSCs). Figure 3 provides an illustration that demonstrates how SS7 further aids the HLR/VLR architecture. [Giner04]

This architecture, while designed and used in static LM, has many theoretical extensions, which will be briefly discussed in 5.6. However, although these architectures and the distinction between static and dynamic schemes comprise much of LM analysis, other parameters in LM must be considered in order to derive and comprehend the optimal overall model.

3.0 Location Management Parameters/Analysis

While evaluating schemes to design LAs or determining the optimal updating standard of LUs for users may seem of higher importance, paging and user mobility can also be

Page 132: Mobile Computing Unit 1 , 2

briefly examined to assist in improving LM and refining models. Although LU costs are generally higher than paging costs, these paging costs are not insignificant. Additionally, poor paging procedures and ineffective mobility modeling and prediction may lead to either significantly delayed calls or decreased QoS, neither of which are acceptable to a user.

3.1 Paging

In the attempt to locate recipients of calls as quickly as possible, multiple methods of paging have been created. The most basic method used is Simultaneous Paging, where every cell in the user’s LA is paged at the same time in order to find the user. Unless there are a relatively low number of cells within the LA, this will cause excessive amounts of paging. Although this method will find the user quicker than the following scheme of Sequential Paging, the costs make Simultaneous Paging rather inefficient.

An alternative scheme is Sequential Paging, where each cell within an LA is paged in succession, with one common theory suggesting the polling of small cell areas in order of decreasing user dwelling possibility. Unfortunately, this was found to have poor performance in some situations, as if the user was in an infrequently occupied location, not only might every cell be paged, but a large delay could occur in call establishment. Additionally, this method requires accurate data gathering concerning common user locations, which necessitates more frequent LUs and thereby increased costs. Consequently, most real-world Sequential Paging methods simply poll the cells nearest to the cell of the most recent LU, and then continue outward if the user is not immediately found. However, such a method will still be inefficient if the user’s velocity is high or an LM scheme is used which specifies infrequent LUs.

As an attempt to improve on previous models, another design called Intelligent Paging was introduced, which calculates specific paging areas to sequentially poll based upon a probability matrix. This method is essentially an optimized version of Sequential Paging. However, this scheme has too much computational overhead incurred through updating and maintaining the matrix, and although perhaps optimal in theory, is effectively impossible for commercial cellular network implementation. Therefore, most current schemes use one of the first two methods presented. [Cowling04] While the best paging methods can significantly speed the locating of a user, significant further improvements are possible by combining them with user mobility predictions.

3.2. User Mobility

For aid in effectively predicting the user’s next location, user movement patterns are analyzed and mobility models are designed. Many such mobility models exist and can be used by networks in LM.

The simplest of these models is random-walk, where user movements are assumed to be entirely random. While this is clearly going to lead to inaccurate predictions, it does require no knowledge of the individual user, and can be effective as a simulation tool.

Page 133: Mobile Computing Unit 1 , 2

Frequently, random-walk is used to demonstrate the improvements a given scheme makes in comparison to this random method.

A very general scheme, ignoring individual users but considering the network as a whole, is called fluid-flow. This method aggregates the movement patterns of users, and consequently can help optimize the network’s utilization and design at a macroscopic level. However, fluid-flow provides no insight on a smaller scale, nor will it give any predictions as to specific user movements for any specific user.

Markovian mobility models also exist, where user movements are predicted through past movements. At large computational cost, every inter-cell movement probability is defined for each user. An extension of the Markovian model, created at perhaps evengreater cost, is the activity-based model. In this model, parameters such as time of day, current location, and predicted destination are also stored and evaluated to create movement probabilities. However, for all the resource expenditures required in implementing these methods, in a test of a simple activity-based scheme, unstable results were returned. An even more complex activity-based scheme might provide better results, but would not be implementable on a large scale due to its immense costs. [Cowling04]

In fact, research on all current models shows that none truly does a satisfactory job of predicting user movements, demonstrating the need for further research in this area. Consequently, [Cowling04] describes a possible enhancement as a scheme called selective-prediction, where predictions are only made in regions where movements are easily foreseeable, and a random prediction method is used elsewhere. To further this scheme, Cowling advocates a network where the base station (BS) learns the mobility characteristics of the region, in addition to the cell movement probabilities. This learning network provides the basis of a Markov model, with the full knowledge of movement probabilities and theoretically incurring low overhead.

Additionally, the paper [Halepovic05] provides an in-depth analysis of sample user movement and call traffic. Empirical data gathered in these experiments reveals that the 10% most mobile users account for approximately two-thirds of the total number of calls within the network. Consequently, such users must be given appropriate consideration involving resource allocation. Over half of users appeared to be stationery, and most (but not all) such users generated much less cellular activity. Therefore, only a weak correlation between user mobility and data traffic exists, as users with few cell changes do have a large variance in the number of calls they made. Further tests within the paper reveal that a majority of users have a home cell. This is a location, whether it be an actual home, office, or other place, from which a majority of their calls originate. This characteristic can be exploited by paging techniques and the customization possible in dynamic LM, as less updates may be necessary if a user is within their home area.

4.0 Dynamic Location Management

Page 134: Mobile Computing Unit 1 , 2

Dynamic Location Management is an advanced form of LM where the parameters of LM can be modified to best fit individual users and conditions. Theories have been and continually are being proposed regarding dynamic LUs and LAs. Additionally, many are reexamining paging and mobility parameters based upon these developments. Many of these proposals in dynamic LM attempt to reduce computational overhead, paging costs, and the required number of LUs. However, many of these proposals are excessively theoretical and complex, and are difficult to implement on a large scale.

4.1 Dynamic Location Update

Many dynamic LU schemes exist, in order to improve upon excessively simple and wasteful static LU schemes. Additionally, these schemes are intended to be customizable, such that each user will have their own optimal LU standard, greatly reducing the overall number of LU updates.

One of these dynamic LU formats is threshold-based, where updates occur each time a parameter goes beyond a set threshold value. One possible threshold is time, where users update at constant time intervals. This saves user computation, but increases overhead significantly if the user does not move. This time-based scheme is very similar to the common static LU scheme, with the important difference of the time value being modifiable. Another threshold-based scheme requires a user update each time they traverse a certain number of cells. This was found to work better than the time-based scheme, unless the users were constantly moving. In such a case, this method becomes quite similar to the static always-update scheme, where many unnecessary updates might occur. Consequently, a preferable scheme was found, called distance-based. This called for an update only if the user moved a certain radial length of distance. However, this scheme is not perfect, as it requires the cellular device to keep track of such distances, which added much computational complexity. [Cowling04] Figures 4, 5 and 6 provide illustrations of these threshold-based LU methods.

Page 135: Mobile Computing Unit 1 , 2

Another dynamic LU scheme is profile-based. This functions by the network compiling a list of the most frequently accessed cells by the user, and only requiring an LU if the user moves outside of these common cells. As would be expected, this scheme is only effective if these predictions can be made accurately and without excessive overhead, but is otherwise inefficient. Additionally, this list must be relatively small, or else paging will become costly.

A more advanced scheme, built upon the efforts of previous methods, is called adaptive. Adaptive LU schemes are very flexible and even may differ from each other, as such schemes are designed to take multiple parameters, such as velocity and mobility patterns, to determine the most efficient LAs. In such an example, having knowledge of a user’s past movements combined with the user’s current speed and direction allows strong predictive power when determining a possible future location for paging. Therefore, LUs

Page 136: Mobile Computing Unit 1 , 2

may not need to be as frequent, thereby reducing the overall LM costs. However, although these adaptive LM schemes are highly successful in terms of reducing LU costs, they are generally too difficult to implement for large networks, requiring excessive computational overhead. [Cowling04] Consequently, dynamic LA schemes must be examined as a possibly preferable solution.

4.2 Dynamic Location Area

While static LA schemes are restrictive and inefficient, dynamic LA designs offer much more flexibility, allowing much more customization. To improve on the past schemes, [Cowling04] proposes several changes to the static LA methodology. Instead of viewing the network as an aggregation of identical cells, it is now viewed as a directed graph, where nodes represent cells, with physical adjacency shown through graph edges. General movement patterns and probabilities, updated at predetermined intervals, are recorded between these cells based upon handoff information. This allows low overhead while still providing predictive power. Additionally, a smoothing factor of k is implemented to allow individual networks to weight new data as desired, where a low k-value causes the network to highly weight new data, and a high k-value causes the network to give precedence to previous data. These adapting patterns can be stored, in order to allow further prediction based upon other data such as time.

A similar parameter examined is dwell time, which is defined as the length of a user's stay within a cell. This is used to dynamically determine the appropriate dimensions of LAs. A smoothing parameter is also used for dwell times to weight past collected data against new data. The preferable method of collecting dwell times is by having the cellular device report its dwell time to the network upon a handoff.

Within a dynamic scheme, LAs, instead of being constant and circular, can be diverse and may take different shapes, in order to be optimal for individual user parameters and network characteristics. As well, cells are organized within these LAs based uponfrequency of use, with the most frequently visited cells being placed in an ordered array. This array can be used in conjunction with known physical topology to design optimal user LAs, constructed such that the users will change LAs and make handoffs as infrequently as possible. To further optimize service for the individual user, call interval times and relative mobility rates are calculated to make low-overhead predictions concerning when LA and cell changes will occur.

4.3 User Characterization

The primary goal of dynamic LM is to provide LU and LA algorithms to each individual user that minimizes the costs for them. To do this, call rate and movement factor estimations must be made. To determine the call rate, the network first determines the call interval, by taking the average interval between calls (in seconds), and adding new call intervals in a weighted manner. The call rate, defined as λ, is then calculated by dividing 3600 by the call interval, in order to obtain the number of calls per hour.

Page 137: Mobile Computing Unit 1 , 2

Given that cells will be of different sizes and covering different types of areas in dynamic LA, it is incorrect to base user movement properties on raw user cell dwell times. Instead, the movement factor γ is used, where this factor specifies a user’s movement speed relative to other users. This factor is further classified based upon specific regions, as the following equation demonstrates:

[Cowling04]

The above equation simply defines a parameter that characterizes user speed, with a large γ value indicating a high-velocity user, and a small γ indicating a low-velocity user. Note that this calculation is per-region rather than per-LA or per-cell in order to avoid the ping-pong effect skewing a user’s perceived speed. However, the network must also determine a method of calculating these times. This is solved through using dwell times and data received from LUs on LA changes. Further cost analysis, which factors in the movement factor γ, will be described in the following section.

4.4 Cost Analysis

As seen before, the total cost of LM is equal to the LU cost added to the paging cost. This equation is always true, regardless of which system is used. However, different systems will have different values for these, and the goal is to find an implementable system that minimizes the total.

The paging cost can be fairly simply defined, as the previously calculated call rate λ, multiplied by the number of cells in the paging area, multiplied by a constant representing the cost per paging message. Consequently, reducing any of these parameters will reduce the overall paging cost. These variables can be seen below. However, the LU cost calculation is somewhat more complicated. Although we can simply say that the LU cost is equal to the cost per LU divided by the estimated dwelling time within the current LA, TLA, it is somewhat difficult to calculate this dwelling time. Through analysis and justified by simulation, [Cowling04] defines the average user’s cost as the sum of the mean dwelling times within the cell multiplied by the probability of residing within the cell for all cells, as seen below. Therefore, as also seen below, to determine an individual user’s TLA, the average TLA is divided by the movement factor γ.

Page 138: Mobile Computing Unit 1 , 2

[Cowling04]

Additionally, the Clu and Cp costs can be examined in order to determine whether the LAs and system created should favor more or less LUs, in order to determine an appropriate balance between LU and paging costs. In real-world applications, these parameters are based upon the available resources of the specific network provider being examined.

This concludes a fairly comprehensive introduction to conventional static and dynamic LM. However, many new theories have recently been presented. Although these are primarily theoretical, they merit examination in the following sections, as they may be the basis for further developments. Additionally, a comparative analysis between static and dynamic LM will be discussed in 5.1, in order to observe costs and view the relative advantages and disadvantages of realistic methods.

5.0 Dynamic Location Management Analysis and Developments

In the world of dynamic LM, new theories are constantly being proposed to reduce LM costs, or otherwise improve the network quality. Additionally, an experiment was conducted to compare generally static industry standards and a simple dynamic LM scheme, in order to clearly show how dynamic LM is preferable to static LM. The following sections provide this comparative analysis as well as an overview of several of these wide-ranging developments.

5.1 Static/Dynamic Location Management Comparison

The paper [Toosizadeh05] summarizes four commonly used LM methods and compares them through C++ simulation. The first method examined was GSM Classic, an older scheme with fixed location areas, LUs occurring on each LA transition, and blanket polling of all cells on an incoming call. Next was GSM+Profiles, a method containing the same LU scheme as GSM Classic, but where sequential paging is performed on of cell areas of decreasing dwell times. The third is the Kyama Method, where both static and dynamic LAs are used in order to provide easier paging. These dynamic LAs in Kyama are a combination of the standard static LA and an extra LA created dynamically for predicting the user’s future movements. LUs occur each time the user moves out of their combined LA. Paging is benefited by using dwell times to determine high probability polling regions within these dynamic LAs. Finally, the dynamic distance-based method was also tested, where LUs occur only on exceeding user movement thresholds, and paging follows the GSM+Profiles paging scheme.

For testing, the authors of this paper ran experiments assuming both a random-waypoint

Page 139: Mobile Computing Unit 1 , 2

model, which assumes the parameters speed, pause time, and direction to all be random, and an activity-based model, where users move as if accomplishing normal tasks, such as moving from home to work and back at predicted intervals. The simulated space was 100 cells in a 10x10 grid, serving 100 users. Traffic was statistically generated through Poisson calculation of random traffic.

Results showed that while the GSM and GSM Profile methods incurred the largest LU costs, due to their static LA and LU methods, they had the lowest paging costs. Conversely, the Kyama method, while requiring a relatively low number of LUs, had extremely high paging costs, as their combined static/dynamic LA method proved to be somewhat unsuccessful. Overall, due to having a very low total LU cost, and also having fairly low paging costs, the best method was the distance-based algorithm. Additionally, the activity-based model proved far superior to the random-waypoint model in all performance categories concerning user movement prediction, as would be expected. [Toosizadeh05]

This experiment demonstrates that dynamic LM schemes will generally be superior to static LM schemes, but also that care must be taken when creating dynamic LAs. If proper analysis is not made, these dynamic LAs may become overcomplicated, and thereby can incur excessively high paging costs. While paging costs are generally significantly less than LU costs, it is impossible to state that the Kyama method’s low LU costs will entirely offset its paging costs. Regardless, the success of the distance-based method in this experiment demonstrates that proper dynamic LM schemes will generally be preferable to static LM schemes. Furthermore, the distance-based dynamic LM scheme used is relatively simple; the theories presented in the following sections include additional improvements that might lead to even higher performance in tests.

5.2 Further Cowling Theories

[Cowling04] briefly presents several possible developments and hypotheses, which, while believed to be worth researching, have not been implemented in large real-world systems. The first is a timer-based LU in conjunction with other LU schemes. This helps to rectify unnecessarily large LAs set for users moving frequently and unpredictably within a relatively small area of space. Assume a scheme is used where LUs occur only on LA changes. Consequently, a user frequently moving between boundaries of LAs that represent physically large areas would be assigned a large LA. However, if the user did not make further movements that would go outside of this LA, the user would unnecessarily retain the large area, within which paging might be costly. Adding a timer-based mechanism would cause an additional regular update to occur, causing the LA to appropriately shrink, as the network would determine the user's movement habits and optimal LA size on these updates.

One simple thought was to reduce the number and complexity of parameters considered in user movement. Although this would reduce predictive power, it is possible that the corresponding reduction in computational costs would be significant enough to offset these losses. Additionally, considering average user speed, instead of individual user

Page 140: Mobile Computing Unit 1 , 2

speed, would give lower computational costs, while still providing some predictive power.

Finally, [Cowling04] suggests further examination of the ratio of LU cost to paging cost. This is believed to be approximately 10:1; however, this is only a rough conjecture. If a precise ratio could be determined, it would allow dynamic LM schemes to determine an optimal LU method, which would update in a manner that minimized overall costs. However, this ratio is often based not only on the size and dimensions of LAs, but also on network-specific packet formats and database resources, which companies do not provide to the public. Consequently, this analysis may not be possible, and so the optimization of the parameters of user movement and mobility, as previously discussed and further used in the following topic, may be preferable.

5.3 Hand-off Velocity Prediction Location Management

[Lam05] proposes a probabilistic approach to paging called Hand-off Velocity Prediction (HVP). This algorithm attempts to efficiently analyze and accurately predict user mobility for paging purposes, based upon user mobility parameters.

In HVP, the paging area for a user is calculated based upon handoff statistics, the location of the last LU, the time since the last LU, and the velocity of the user. HVP then creates handoff graphs, indicating the most likely location of the user. Complex calculations beyond the scope of this paper are used to determine the precise probabilities of user movements, but can be examined in [Lam05]. If these predictions can be made accurately, LUs would not need to be so frequent, as less user data could still have enough predictive power using HVP to avoid excessive paging costs. However, a sequential paging scheme used with HVP may delay some calls, in cases where users move in an unpredictable manner. Therefore, the authors propose a group-paging method to meet any QoS requirements, where multiple cells are polled at once to rapidly find the user.

A network designed for HVP use incorporates both distance-based and time-based LUs. Users are classified into groups, depending on their approximate velocities. These velocities are found by calculating the change of signal strength of the user’s cellular device over time, hence the need for time-based LUs. Through statistics regarding handoffs and velocity, the network can calculate acceleration, which allows higher-precision predictions of movement. Probabilistic equations are used to further improve these predictions, by considering the parameters cell size, acceleration, and the number of cells previously traversed. The author’s experiments demonstrate a significant decrease in LU and paging costs, although the authors note themselves that this system is very computationally complex.

This last point is unfortunately the same for many Dynamic LM algorithms. While HVP is theoretically successful in simulations and small experiments, giving results superior to those of current systems, it is impractical to be implemented for today’s large commercial networks. However, if user movements cannot directly be used to predict handoffs, as in

Page 141: Mobile Computing Unit 1 , 2

HVP, these movements can be used for improved LA construction as seen in the next section.

5.4 Set-Covering Based Location Area Planning

[Lo04] advocates designing LAs in a set covering method, specifically creating Set-Covering-Based Location area Planning (SCBLP). The goal of this method is to group the cells into appropriate LAs, facilitating LM by decreasing the LU and paging costs. The network is viewed as a set of location databases, and these databases are used to create a virtual tree structure. This structure provides a model for examining database changes on user movements, where a user effectively leaves one tree branch to move to another on an LA change. Consequently, the costs incurred from the frequently made call locations and destinations can be reduced, by using this set method to determine appropriate organization of nodes within the network. SCBLP makes set-covering specifically linked to LM, and is used to divide the network into multiple LAs, by determining which sets, given movement and handoff data, will require the least number of LUs. This is calculated by recording the number of boundary crossings between cells, and analyzing possible network configurations to determine which will cause the least number of required updates.

Once the best LA partitions are determined, they are further examined in respect to their cohesion, coupling and cost-benefit. Cohesion is defined as the sum of border crossings contained with a particular LA, and is seen in Figure 8. A higher cohesion is desired, as these intra-LA border crossings occurring more often is preferable to border movements causing LA changes. Coupling is defined as the inverse of the number of border crossings defined to other LAs, and is seen in Figure 9. In this case, we desire to minimize the LA changes, and consequently maximize the inverse. Cost benefit is simply defined as the cohesion benefit multiplied by the coupling costs.

Page 142: Mobile Computing Unit 1 , 2

This algorithm is somewhat complicated, but simulations within the paper demonstrate that mobility management and LM costs are reduced in comparison to common greedy or

Page 143: Mobile Computing Unit 1 , 2

random set creation algorithms used to create LAs. [Lo04] However, as possibly effective as this and the previous algorithms may be, they all fail to wholly address the potential

risks of the ping-pong effect. The following subject addresses this.

5.5 Triple-Layer Location Management

Although most efforts involving dynamic LM focus on improving LU schemes rather than creating efficient LAs, [Fan02] proposes a scheme where three location layers are used to ensure optimal user coverage. The main issue addressed and solved by this paper is the ping-pong effect.

Traditional (Figure 9) and generalized (Figure 1) ping-pong effects cause a significant number of unnecessary LUs, combining to equal over 20% of the total LU cost. Two insufficient schemes to counter this are the Two Location Area (TLA) scheme and Virtual Layer (VLA) Scheme. The TLA scheme remembers the most recently visited areas, such that the network will know not to update if it is simply moving back and forth between the same two LAs. However, this scheme still has problems with the generalized ping-pong effect. VLA Schemes add a second LA layer to prevent unnecessary LUs from occurring when movements take place within a small region of cells. However, not only is this not fully sufficient, it simultaneously adds complexity that may end up causing unexpected ping-pong effects. Alternatively, extensive cell overlapping can be implemented, but only at a large paging cost.

The triple-layer scheme builds upon these, and is designed such that whenever a user moves out of one layer, they are able to selectively register with either of the two other layers, optimally choosing the layer with the closest center to the user. These three layers are also constructed such that layer boundaries will not overlap each other over multiple adjacent cells, and that all three layers will not overlap on the same cell boundary. This occurs in order to ensure that users will be able to connect to an appropriate new layer on handoff. Through several simulations comparing results such as LU costs, overall costs and reduction of ping-pong costs, triple-layer network architecture is shown by the authors to be more efficient than current methods and those previously proposed.

Page 144: Mobile Computing Unit 1 , 2

However, computational overhead in this scheme might be high for large networks, and therefore this scheme will not be seen often in real-world applications. Similarly, many of the following theories may also be somewhat unsuitable for real-world implementation, but still provide valuable insight as to the types of modifications that can lead to improvements in LM.

5.6 Additional Dynamic LM Theories

Many other innovative Dynamic LM concepts exist, which although perhaps excessively complex, theoretical, or systems-based to be fully explored, deserve brief mention.

[Lee04] proposes a scheme where LU and lookup costs are balanced, minimizing the overall performance penalty and overhead. Location information is stored within location databases called agents, which themselves are placed within BSs. Each agent contains the address of several users or other agents, thereby allowing for easier forwarding of data within the network. Instead of searching through large tables of entries or large numbers of cells, these agent trees can quickly be traversed, with the addresses stored providing quick reference for locating the recipient of a call. Additionally, through the grouping of users at similar physical locations to similar logical address, simpler paths can be created, reducing the necessary number of agents. However, this algorithm proves effective only for networks with a low call-to-mobility ratio.

[Giner04] proposes several improvements to the commonly used HLR/VLR architecture, mainly involving methods of increasing the speed of finding a called user’s VLR. One proposed theory involves using pointer chains within the HLR to store successive user VLR locations, such that updates can be made to the end of the chain, rather than requiring HLR memory to be directly accessed and updated on each movement. A similar scheme involves using local anchoring, where each user has their most frequently occupied LA designated the anchor. If the user moves, the anchor VLR is updated instead of the HLR, again saving HLR resources. Then, upon call arrival, the anchor is checked first, and then the pointer list is traversed to locate the user if necessary. Both of these schemes were shown to only be somewhat effective, working best when calls are infrequent and user mobility is high. Giner suggested using per-user location caching to fix this weakness, storing probable user locations within the MSC, but this scheme fails when users frequently move to new locations.

[Hassan03] suggests that instead using the conventional HLR/VLR architecture, all operations should be routed through several BSs connected by wireless inter-BS links, in a system called cell hopping. This system is not as decentralized as ad-hoc routing, as users do not make connections directly with each other. Users simply roam freely, registering dynamically with the nearest BS, with user requests flowing through these BSs. Cell-Based On-Demand Location Management is used, where Membership Request Query (MRQ) is used with querying and caching to determine the location of a desired user. This process may be slower than paging done in HLR/VLR architecture, but this lightweight scheme requires no central storage system. Although [Hassan03] makes an interesting proposition, it is highly unlikely that current cellular companies would desire

Page 145: Mobile Computing Unit 1 , 2

to make this radical change and decentralize to this degree.

Additionally, [Xiao03] proposes a fractional movement-based LU scheme for cellular networks. This paper cites a deficiency of standard cell threshold-based LU methods, in that such schemes only assume VLR updates will occur after the specified number of cells are traversed, ignoring the possibility that an LU will otherwise occur due to the user crossing an LA boundary. Consequently, Xiao introduces a fractional threshold value r in addition the standard value. This is used such that after the standard threshold is reached, an LU is performed on this step with probability 1/r, or on the next cell movement with probability 1/(1 - r). [Giner05] uses a somewhat similar fractional distance-based method. In this scheme, the distance counter is reexamined on every cell movement, and zeroed if a cached cell is reached. Giner uses a fractional threshold value q similarly to Xiao's methodology, where after the standard threshold is reached, an LU is either performed immediately with probability 1/q, or on the next movement with probability 1/(1 - q). Giner also provides further research and analysis as to optimal threshold and q values.

While these improvements and theories provide a sampling of current research, the continued evolution of technology and cellular networks themselves will also cause significant changes to and improvements in LM, as discussed in the following sections.

6.0 Future LM Developments and E911

The world of cellular networks and LM is certainly not static. Even the most recent theories and developments may become outdated within months. With the increased use of 3G Cellular Networks, and the E911 service providing a national standard in which LM is absolutely essential, it is critical to observe what is to come.

6.1 Location Tracking Evolution

Currently, the market standard for location tracking uses the cell ID to track cellular devices through many of the methods as described previously, primarily including the HLR/VLR architecture. However, it is not as precise as many would desire, as this system is not always able to locate users to within a few meters.

Future possibilities for location tracking in cellular systems include Global Positioning Systems (GPS), which use line-of-sight satellite position calculation, giving five-meter range precision, but encounter problems when physical obstructions block the connection. Another possibility is Assisted Global Positioning Systems (AGPS), which is similar to normal GPS, but uses advanced searching techniques to determine user position. Unfortunately, AGPS is quite expensive, and still requires line-of-sight. Finally, there is the potential to use Broadband Satellite Networks, which use the low-earth-orbit satellites to create a global network. These give relatively high precision without line-of-sight, but are very complex to manage. [Rao03]

Page 146: Mobile Computing Unit 1 , 2

An example of a current commercial use for GPS is cellular phone games. These games are a larger part of the industry than might be expected, accounting for approximately $4.8 billion of revenue to providers [Rashid06]. In order to approximate the true location of the call, these networks generally use Time of Arrival (TOA) measurements and examine the difference of arrival times for multiple incoming signals, while considering signal transmission location. These calculations can be used with GPS to further resolve user location. However, these methods have not been implemented on a large scale, mainly due to GPS's costs and limitations. Alternative methods include approximating cellular device location based upon the device's relative location to other objects within the cellular infrastructure, but this is generally imprecise and unreliable. Games may seem to be a somewhat trivial example of GPS's usage and of advanced location tracking, but actually includes some methods used in the E911 service, as will be seen later.

Regardless, these are future plans, currently only used for military, private, and small-network settings, and may not fully enter the cellular phone marketplace in the near future. Most of these are excessively expensive or are too difficult to maintain for a large number of cellular subscribers at this point in time. Still, for users willing to pay additional fees for Location-Based Services, such as games as described above, these technologies can be of great use and entertainment value. As technology improves and the transition to 3G continues, perhaps such services will become common.

6.2 Location Management in 3G

3G Cellular Networks, while providing significant improvements over 2G Networks, share many similarities in LM with its predecessor. However, there is one significant difference in the HLR/VLR architecture worth noting.

This new 3G addition is the GLR (Gateway Location Register). GLRs are used to handle VLR updates in place of the HLR. The network in 3G is partitioned into Gateway Location Areas (G-LAs) that contain normal LAs. Crossing a G-LA causes an HLR update, while crossing an LA causes a GLR location update, and making a predetermined number of movements between cells causes a VLR update. It is essentially a three-level hierarchical scheme that, while significantly adding to the complexity of the network, equally improves efficiency. Also, analysis shows that dynamic and static 3G networks using this scheme outperform dynamic and static 2G networks, especially if the remote-local-cost ratio is high, and also that both static and dynamic 3G have their purposes; static 3G is preferable if mobility is high or polling/paging cost is low, with dynamic 3G superior in other cases. [Xiao04] However, in the case of a service such as Enhanced 911, the cost of LM is less relevant; the safety of the user transcends monetary considerations.

6.3 E911

Enhanced 911 is an emergency calling system that uses advanced LM techniques to find the physical location of a user in distress. Public Safety Answering Points (PSAPs), specific physical locations designed to center E911 activities around, are staffed by 911

Page 147: Mobile Computing Unit 1 , 2

operators who use AGPS or TDOA to aid in locating users in need of assistance. Additionally, Wireless Location Signatures (WLS) are used with path loss and shadow fading data, and are combined with Geographical Predicted Signature Databases (PSD) and statistical analysis to make the most accurate predictions of user locations possible.

In E911, calls follow this process: the BS forwards the call to the MSC, where a voice path is set up to the access point. The MSC requests the BS locate the caller, which forwards the location request to the Serving Mobile Location Center (SMLC). The SMLC uses network measurement reports to approximate the location of the user, and then forwards the approximation to the Gateway Mobile Location Center (GMLC), which then finally transfers a refined estimate to the PSAP. It is a very complex process, unusable for normal communication, but essential in these extreme cases.[Feuerstein04]

However, as recent a development as E911 is, may already be in the process of being phased out. The National Emergency Number Association (NENA) report [NENA05]states that E911 must be upgraded to a Next Generation 911 (NG911) scheme in the near future. New devices must implement systems to handle NG911 calls, and LM must continue to be improved. The new NG911 must be expanded to VoIP architecture, and better integration of national databases and stations must occur. However, E911 still stands as an example of the importance of LM as well as the rapidity of change within cellular networks.

7.0 Conclusion

As the comparisons within the papers included in this survey indicate, static LM schemes are becoming increasingly out of date. While they are still used where cost or resource availability is an issue, upgrading to dynamic schemes is preferable. However, dynamic LM schemes have not yet become a panacea, as many schemes are still only theories, being insightful developments, but not useful under real-world conditions. Consequently, dynamic LM must continue to be researched and improved.

Given the increasing number of cellular users in an on-demand world, and transitions occurring from E911 to NG911 and 2G to 3G and beyond, Location Management must and will continue to improve both Location Update and paging costs, while allocating appropriate Location Areas in a practical, implementable fashion.

8.0 References

Please note - some references may require user authentication.

Page 148: Mobile Computing Unit 1 , 2

[Cowling04] James Cowling, "Dynamic Location Management in Heterogeneous Cellular Networks," MIT Thesis. http://people.csail.mit.edu/cowling/thesis/jcowling-dynamic-Nov04.pdfExtensive overview of Static and Dynamic LM as well as paging and several other parameters.

[Giner04] Vicenete Casares Giner, "State of the art in Location Management procedures," Eurongi Archive. http://eurongi.enst.fr/archive/127/JRA151.pdfProvides an informative view of the HLR/VLR architecture, as well as providing an overview of LM techniques.

[Kyantakya04] K. Kyantakya and K. Jobmann, "Wireless Networks - Location Management in Cellular Networks: Classification of the Most Important Paradigms, Realistic Simulation Framework, and Relative Performance Analysis."IEEE transactions on vehicular technology 2005: v.54, no.2 687-708. http://ieeexplore.ieee.org/search/wrapper.jsp?arnumber=1412086Similar to Cowling's Paper, provides an extensive overview of Static and Dynamic LM schemes.

[Toosizadeh05] Navid Toosizadeh and Hadi Bannazadeh, "Location Management in Mobile Networks: Comparison and Analysis," University of Toronto Report. http://www.eecg.toronto.edu/~navid/ProjectReport.pdfCompares 4 Static/Dynamic LM schemes.

[Halepovic05] Emir Halepovic and Carey Williamson, "Characterizing and Modeling User Mobility in a Cellular Data Network," University of Calgary. http://portal.acm.org/ft_gateway.cfm?id=1089969&type=pdf&coll=GUIDE&dl=ACM&CFID=67915996&CFTOKEN=36591408Provides an analysis of user mobility, including examination of data traces.

[Lo04] Shi-Wu Lo, Tei-Wei Kuo, Kam-Yiu Lam, Guo-Hui Li, "Efficient location area planning for cellular networks with hierarchical location databases," Computer Networks. Amsterdam: Aug 21, 2004.Vol.45, Iss. 6; pg. 715. http://dx.doi.org/10.1016/j.comnet.2004.02.012Discusses the SCBLP theory.

[Xiao04] Y. Xiao, Y. Pan, J. Li, "Design and analysis of location management for 3G cellular networks," IEEE Transactions on Parallel and Distributed Systems, v.15 i.4 April 2004 p.339-349. http://ieeexplore.ieee.org/search/wrapper.jsp?arnumber=1271183Provides insight as to 3G-specific LM modifications.

[Giner05] Vicenete Casares Giner and Pablo Garcia-Escalle, "On the Fractional Movement-Distance Based Scheme for PCS Location Management with Selective Paging," Lecture Notes in Computer Science, Volume 3427, Jan 2005, Pages 202 - 218. http://www.springerlink.com/index/M87GJA20CLFMVX9Q.pdfDiscusses a Fractional-Movement scheme using Distance as the main parameter.

Page 149: Mobile Computing Unit 1 , 2

[Xiao03] Yang Xiao "Optimal fractional movement-based scheme for PCS location management ," Communications Letters, IEEE, v.7 i.2 Feb 2003 p.67-69. http://ieeexplore.ieee.org/Xplore/login.jsp?url=/iel5/4234/26480/01178889.pdf?tp=&arnumber=1178889&isnumber=26480Discusses a Fractional-Movement scheme using Cell Movement as the main parameter.

[Lee04] Kevin Lee, Hong Wing Lee, Sanjay Jha, and Nirupama Bulusu, "Adaptive, Distributed Location Management in Mobile, Wireless Networks." http://www.cse.unsw.edu.au/~sjha/papers/icc04lee.pdfProposes an agent-based LM system.

[Lam05] Kam-Yiu Lam, BiYu Liang, ChuanLin Zhang, "On Using Handoff Statistics and Velocity for Location Management in Cellular Wireless Networks," The Computer Journal Jan 2005: 48, 1. http://vnweb.hwwilsonweb.com/hww/jumpstart.jhtml?recid=0bc05f7a67b1790e3761dd0af148832703413c5fdbb17b22a1747616f6aa0b3ead887cd28ffac928Proposes HVP, discussing use of Velocity and other parameters for user movement prediction.

[Rao03] Bharat Rao, Lous Minakakis, "Evolution of Mobile Location-Based Services." http://portal.acm.org/citation.cfm?doid=953460.953490Discusses Evolution of Location-Tracking mechanisms, such as GPS/AGPS.

[Rashid06] Omer Rashid, Ian Mullins, Paul Coulton, Reuben Edwards, "Extending Cyberspace: Location Based Games Using Cellular Phones." http://portal.acm.org/ft_gateway.cfm?id=1111302&type=pdf&coll=GUIDE&dl=ACM&CFID=67915996&CFTOKEN=36591408Discusses LM and systems used in current cell-phone games.

[Feuerstein04] Marty Feuerstein, "The Complex World of Wireless E911," Polaris Wireless. http://search.epnet.com/login.aspx?direct=true&db=buh&an=14114819Provides an overview of E911 service and call process.

[NENA05] Unsigned, "NENA NG E9-1-1 Program 2005 Report," National Emergency Number Association Report. http://www.nena.org/media/files/ng_final_copy_lo-rez.pdfPresents NENA's opinions on E911 in 2005 and future recommendations.

[Hassan03] Jahan Hassan and Sanjay Jha, "Cell Hopping: A Lightweight Architecture for Wireless Communications," IEEE Wirelesss Communications October 2003. http://www.comsoc.org/livepubs/pci/private/2003/oct/hassan.htmlPresents an LM scheme which avoids centralization and focuses on BS use.

[Fan02] Guangbin Fan, Ivan Stojmenovic, and Jingyuan Zhang, "A Triple Layer Location Management Strategy for Wireless Cellular Networks." http://www.site.uottawa.ca/~ivan/TripleIC3N.pdf

Page 150: Mobile Computing Unit 1 , 2

Presents an LA scheme which uses three layers to avoid the ping-pong effect.

[Yu05] F. Yu, V.W.S. Wong, and V.C.M. Leung, "Performance Enhancement of Combining QoS Provisioning and Location Management in Wireless Cellular Networks," IEEE transactions on wireless communications 2005: v.4 no.3 943-953. http://ieeexplore.ieee.org/search/wrapper.jsp?arnumber=1427684Presents a scheme where QoS and LM are considered simultaneously.

[Varshney03] Upkar Varshney, "Location Management for Mobile Commerce Applications in Wireless Internet Environment." http://www.sis.pitt.edu/~dtipper/3955/acm_paper.pdfPresents an LM scheme for Commercial (high-priority) applications.

9. List of Acronyms

AGPS: Assisted GPSBS: Base StationE911: Enhanced 911EIA/TIA: Electronic and Telephone Industry AssociationsHLR: Home Location RegisterHVP: Hand-off Velocity PredictionIS: Interim StandardG-LA: Gateway Location AreaGLR: Gateway Location RegisterGMLC: Gateway Mobile Location CenterGPS: Global Positioning SystemsGSM: Global System for Mobile CommunicationsLA: Location AreaLM: Location ManagementLU: Location UpdateMAP: Mobile Application PartMRQ: Membership Request QueryMSC: Mobile Switching CenterNENA: National Emergency Number AssociationNG911: Next-Generation 911PSAP: Public Safety Answering PointPSD: Predicted Signature DatabasesQoS: Quality of ServiceSCBLP: Set-Covering Based Location Area PlanningSCP: Service Control PointSMLC: Serving Mobile Location CenterSSP: Service Switching PointSS7: Signaling System 7STP: Signal Transfer Point

Page 151: Mobile Computing Unit 1 , 2

TOA: Time of ArrivalTDOA: Time Difference on ArrivalTLA: Two Layer AreaVLA: Virtual Layer AreaVLR: Visitor Location RegisterVoIP: Voice over IPWLS: Wireless Location Signatures

Paper available at http://www.cs.wustl.edu/~jain/cse574-06/cellular_location.htm

Page 152: Mobile Computing Unit 1 , 2

1. INTRODUCTION

The Global System for Mobile communications (GSM) is the world’s dominant wireless technology. This is a world-wide standard for digital cellular telephony, or as most people know them Digital Mobile Telephones. GSM was created by the Europeans, and originally meant "Groupe Special Mobile", but this didn't translate well, so the now common more globally appealing name was adopted. GSM is a published standard by ETSI, and has now enjoys widespread implementation in Europe, Asia, and increasingly America.

There are many arguments about the relative merits of analogue versus digital, but for my mind it comes down to this: Analogue sounds better and goes further, Digital doesn't sound as good, but does a whole lot more. Check out the links page for sites that have some good discussion on the Digital versus Analog debate. Examples of what digital can do that analogue doesn't are fax send & receive, data calls, and messaging.

Throughout the evolution of cellular telecommunications, various systems have been developed without the benefit of standardized specifications. This presented many problems directly related to compatibility, especially with the development of digital radio technology. The GSM standard is intended to address these problems. From 1982 to 1985 discussions were held to decide between building an analog or digital system. After multiple field tests, a digital system was adopted for GSM. The next task was to decide between a narrow or broadband solution. In May 1987, the narrowband time division multiple access (TDMA) solution was chosen.

1 | P a g e

Page 153: Mobile Computing Unit 1 , 2

2. HISTORY

The idea of the first cellular network was brainstormed in 1947. It was intended to be used for military purposes as a way of supplying troops with more advanced forms of communications. From 1947 till about 1979 several different forms of broadcasting technology emerged. The United States began to develop the AMPS (Advanced Mobile Phone Service) network, while European countries were developing their own forms of communication.

But the Europeans quickly realized the disadvantages of each European country operating on their mobile network. It prevents cell phone use from country to country within Europe. With the emerging European Union and high travel volume between countries in Europe this was seen as a problem. Rectifying the situation the Conference of European Posts and Telegraphs (CEPT) assembled a research group with intentions of researching the mobile phone system in Europe. This group was called Group Spécial Mobile (GSM).

For the next ten years the GSM group outlined standards, researched technology and designed a way to implement a pan-European mobile phone network. In 1989 work done by the GSM group was transferred to the European Telecommunication Standards Institute (ETSI). The name GSM was transposed to name the type of service invented. The acronym GSM had been changed from Group Spécial Mobile to Global Systems Mobile Telecommunications.

By April of 1991 commercial service of the GSM network had begun. Just a year and half later in 1993 there were already 36 GSM networks in over 22 countries. Several other countries were on the rise to adopt this new mobile phone network and participate in what was becoming a worldwide standard. At the same time, GSM also became widely used in the Middle East, South Africa and Australia.

While the European Union had developed a sophisticated digital cell phone system, the United States was still operating primarily on the old, analog AMPS network and TDMA. In the end of October 2001, Cingular was the first to announce their switch to the 3G GSM network. This involved switching more then 22 million customers from TDMA to GSM. In 2005 Cingular stopped new phone activation on the TDMA network and began only selling GSM service.

Most of the world external to the United States uses GSM technology. However, operate on different frequencies then the United States GSM phones. There are five major GSM frequencies that have become standard worldwide. They include GSM-900, GSM-1800, GSM-850, GSM-1900 and GSM-400.

GSM-900 and GSM-1800 are standards used mostly worldwide. It is the frequency European phones operate on as well as most of Asia and Australia. GSM-850 and GSM-1900 are primarily United States frequencies. They are also the standard for Canada GSM service and countries in Latin and South America. GSM-400 is the least popular of the bunch and is rarely used. It is an older frequency that was used in Russia and Europe before GSM-900 and GSM-1800 became available. There is not many networks currently operating at this frequency.

2 | P a g e

Page 154: Mobile Computing Unit 1 , 2

3. GSM NETWORK ARCHITECTURE

A GSM network is composed of several functional entities, whose functions and interfaces are specified. Figure 1 below shows the layout of a generic GSM network.

Fig.1. General Architecture of a GSM Network

The GSM network can be divided into three broad parts. The Mobile Station is carried by the subscriber. The Base Station Subsystem controls the radio link with the Mobile Station. The Network Subsystem, the main part of which is the Mobile services Switching Center (MSC), performs the switching of calls between the mobile users, and between mobile and fixed network users. The Mobile Station and the Base Station Subsystem communicate across the Um interface, also known as the air interface or radio link. The Base Station Subsystem communicates with the Mobile services Switching Center across the A interface.

3.1. MOBILE STATION

The mobile station (MS) consists of the mobile equipment (the terminal) and a smart card called the Subscriber Identity Module (SIM). The SIM provides personal mobility, so that the user can have access to subscribed services irrespective of a specific terminal. By inserting the SIM card into another GSM terminal, the user is able to receive calls at that terminal, make calls from that terminal, and receive other subscribed services.

The mobile equipment is uniquely identified by the International Mobile Equipment Identity (IMEI). The SIM card contains the International Mobile Subscriber Identity (IMSI) used to identify the subscriber to the system, a secret key for authentication, and other information. The IMEI and the IMSI are independent, thereby allowing personal mobility. The SIM card may be protected against unauthorized use by a password or personal identity number.

3 | P a g e

Page 155: Mobile Computing Unit 1 , 2

The Mobile Station and the Base Tranceiver Station communicate across the air interface, Um. This interface uses LAPDm protocol for signaling, to conduct call control, measurement reporting, Handover, Power control, Authentication, Authorization, Location Update and so on. Traffic and Signaling are sent in bursts of 0.577 ms at intervals of 4.615 ms, to form data blocks each 20 ms.

3.2. BASE STATION SUBSYSTEM

The Base Station Subsystem (BSS) is the section of a traditional cellular telephone network which is responsible for handling traffic and signaling between a mobile phone and the Network Switching Subsystem. The BSS carries out the transcoding of speech channels, allocation of radio channels to mobile phones, paging, quality management of transmission and reception over the air interface and many other tasks related to the radio network. The Base Station Subsystem is composed of two parts, the Base Transceiver Station (BTS) and the Base Station Controller (BSC). These communicate across the standardized Abis interface. The Abis interface is generally carried by a DS-1, ES-1, or E1 TDM circuit. Uses TDM subchannels for traffic (TCH), LAPD protocol for BTS supervision and telecom signaling, and carries synchronization from the BSC to the BTS and MS. The Base Station Control and the Message Switching Center communicate across the A interface. It is used for carrying Traffic channels and the BSSAP user part of the SS7 stack. Although there are usually transcoding units between BSC and MSC, the signaling communication takes place between these two ending points and the transcoder unit doesn't touch the SS7 information, only the voice or CS data are transcoded or rate adapted.

3.2.1 BASE TRANSCEIVER STATION

The Base Transceiver Station, or BTS, contains the equipment for transmitting and receiving of radio signals (transceivers), antennas, and equipment for encrypting and decrypting communications with the Base Station Controller (BSC). Typically a BTS will have several transceivers (TRXs) which allow it to serve several different frequencies and different sectors of the cell. The BTSs are equipped with radios that are able to modulate layer 1 of interface Um; for GSM 2G+ the modulation type is GMSK, while for EDGE-enabled networks it is GMSK and 8-PSK.

A TRX transmits and receives according to the GSM standards, which specify eight TDMA timeslots per radio frequency. A TRX may lose some of this capacity as some information is required to be broadcast to handsets in the area that the BTS serves. This information allows the handsets to identify the network and gain access to it. This signaling makes use of a channel known as the BCCH (Broadcast Control Channel).

3.2.2 BASE STATION CONTROL

The Base Station Controller (BSC) provides, classically, the intelligence behind the BTSs. It provides all the control functions and physical links between the MSC and BTS. The BSC provides functions such as handover, cell configuration data, and control of radio frequency (RF) power levels in Base Transceiver Stations. A key function of the BSC is to act as a concentrator

4 | P a g e

Page 156: Mobile Computing Unit 1 , 2

where many different low capacity connections to BTSs become reduced to a smaller number of connections towards the Mobile Switching Center (MSC).

3.3. NETWORK SWITCHING SUBSYTEM

The first subsystem of the GSM Network is the Network Switching Subsystem (NSS). Network Switching Subsystem, or NSS, is the component of a GSM system that carries out switching functions and manages the communications between mobile phones and the Public Switched Telephone Network. It is also responsible for the subscriber data handling, charging and control of calls. It is owned and deployed by mobile phone operators and allows mobile phones to communicate with each other and telephones in the wider telecommunications network. The architecture closely resembles a telephone exchange, but there are additional functions which are needed because the phones are not fixed in one location.

The Network Switching Subsystem, also referred to as the GSM core network, usually refers to the circuit-switched core network, used for traditional GSM services such as voice calls, SMS, and Circuit Switched Data calls. There is also an overlay architecture on the GSM core network to provide packet-switched data services and is known as the GPRS core network. This allows mobile phones to have access to services such as WAP, MMS, and Internet access.

All mobile phones manufactured today have both circuit and packet based services, so most operators have a GPRS network in addition to the standard GSM core network.

3.3.1 MESSAGE SWITCHING CENTER

The central component of the Network Subsystem is the Mobile services Switching Center (MSC). It acts like a normal switching node of the Public Switched Telephone Network (PSTN) or International Switched Data Network (ISDN), and additionally provides all the functionality needed to handle a mobile subscriber, such as registration, authentication, location updating, handovers, and call routing to a roaming subscriber. The MSC provides the connection to the fixed networks (such as the PSTN or ISDN). Signaling between functional entities in the Network Subsystem uses Signaling System Number 7 (SS7), used for trunk signaling in ISDN and widely used in current public networks. The Signaling System Number 7 will be discussed in Section 4.

3.3.2 HOME LOCATION REGISTER

The Home Location Register or HLR is a central database that contains details of each mobile phone subscriber that is authorized to use the GSM core network. There is one logical HLR per PLMN, although there may be multiple physical platforms.

The HLR stores details of every SIM card issued by the mobile phone operator. Each SIM has a unique identifier called an IMSI which is the primary key to each HLR record. The next important items of data associated with the SIM are the MSISDNs, which are the telephone numbers used by mobile phones to make and receive calls. The primary MSISDN is the number used for making and receiving voice calls and SMS, but it is possible for a SIM to have other

5 | P a g e

Page 157: Mobile Computing Unit 1 , 2

secondary MSISDNs associated with it for fax and data calls. Each MSISDN is also a primary key to the HLR record.

3.3.3 VISITOR LOCATION REGISTER

The Visitor Location Register or VLR is a temporary database of the subscribers who have roamed into the particular area which it serves. Each Base Station in the network is served by exactly one VLR; hence a subscriber cannot be present in more than one VLR at a time.

The data stored in the VLR has either been received from the HLR, or collected from the MS. In practice, for performance reasons, most vendors integrate the VLR directly to the V-MSC and, where this is not done, the VLR is very tightly linked with the MSC via a proprietary interface.

3.3.4 EQUIPMENT IDENTITY REGISTER

The EIR (Equipment Identity Register) is often integrated to the HLR. The EIR keeps a list of mobile phones through their IMEI which are to be banned from the network or monitored. This is designed to allow tracking of stolen mobile phones. In theory all data about all stolen mobile phones should be distributed to all EIRs in the world through a Central EIR. It is clear, however, that there are some countries where this is not in operation. The EIR data does not have to change in real time, which means that this function can be less distributed than the function of the HLR.

3.3.5 AUTHENTICATION CENTRE

The Authentication Centre or AUC is a function to authenticate each SIM card that attempts to connect to the GSM core network. Once the authentication is successful, the HLR is allowed to manage the SIM and services described above. An encryption key is also generated that is subsequently used to encrypt all wireless communications between the mobile phone and the GSM core network.

If the authentication fails, then no services are possible from that particular combination of SIM card and mobile phone operator attempted.

The AUC does not engage directly in the authentication process, but instead generates data known as triplets for the MSC to use during the procedure. The security of the process depends upon a shared secret between the AUC and the SIM called the Ki. The Ki is securely burned into the SIM during manufacture and is also securely replicated onto the AUC. This Ki is never transmitted between the AUC and SIM, but is combined with the IMSI to produce a challenge/response for identification purposes and an encryption key called Kc for use in over the air communications.

6 | P a g e

Page 158: Mobile Computing Unit 1 , 2

3.4. OPERATION SUPPORT SUBSYSTEM (OSS)

The Operations and Maintenance Center (OMC) is connected to all equipment in the switching system and to the Base Station Control as shown in Figure 2 below. The implementation of OMC is called the operation and support system (OSS).

Fig.2. Illustration of the Operations and Maintenance Center (OMC)

The OSS is the functional entity from which the network operator monitors and controls the system. The purpose of OSS is to offer the customer cost-effective support for centralized, regional and local operational and maintenance activities that are required for a GSM network. An important function of OSS is to provide a network overview and support the maintenance activities of different operation and maintenance organizations.

Here are some of the OMC functions:

• Administration and commercial operation (subscription, end terminals, charging and statistics).

• Security Management.• Network configuration, Operation and Performance Management.• Maintenance Tasks.

7 | P a g e

Page 159: Mobile Computing Unit 1 , 2

4. GSM NETWORK AREAS

The GSM network is made up of geographical areas. As shown in Figure 3, these areas include cells, location areas (LAs), MSC/VLR service areas, and public land mobile network (PLMN) areas.

Fig.3. GSM Network geographical areas

The cell is the area given radio coverage by one base transceiver station. The GSM network identifies each cell via the cell global identity (CGI) number assigned to each cell. The location area is a group of cells. It is the area in which the subscriber is paged. Each LA is served by one or more base station controllers, yet only by a single MSC as shown in Figure 4. Each LA is assigned a location area identity (LAI) number.

Fig.4. Illustration of the Location Areas (LA)

An MSC/VLR service area represents the part of the GSM network that is covered by one MSC and which is reachable since it is registered in the VLR of the MSC as shown in Figure 5. The PLMN service area is an area served by one network operator

8 | P a g e

Page 160: Mobile Computing Unit 1 , 2

Fig.5. Illustration of the MSC/VLR Service Areas

9 | P a g e

Page 161: Mobile Computing Unit 1 , 2

5. KEY GSM NETWORK FEATURES

5.1. Radio Link Aspects

The International Telecommunication Union (ITU), which manages the international allocation of radio spectrum (among many other functions), allocated the bands 890-915 MHz for the uplink (mobile station to base station) and 935-960 MHz for the downlink (base station to mobile station) for mobile networks in Europe. Since this range was already being used in the early 1980s by the analog systems of the day, the CEPT had the foresight to reserve the top 10 MHz of each band for the GSM network that was still being developed. Eventually, GSM will be allocated the entire 2x25 MHz bandwidth.

5.2. Multiple Access and Channel Structure

Since radio spectrum is a limited resource shared by all users, a method must be devised to divide up the bandwidth among as many users as possible. The method chosen by GSM is a combination of Time- and Frequency-Division Multiple Access (TDMA/FDMA). The FDMA part involves the division by frequency of the (maximum) 25 MHz bandwidth into 124 carrier frequencies spaced 200 kHz apart. One or more carrier frequencies are assigned to each base station. Each of these carrier frequencies is then divided in time, using a TDMA scheme. The fundamental unit of time in this TDMA scheme is called a burst period and it lasts 15/26 ms (or approx. 0.577 ms). Eight burst periods are grouped into a TDMA frame (120/26 ms, or approx. 4.615 ms), which forms the basic unit for the definition of logical channels. One physical channel is one burst period per TDMA frame.

Channels are defined by the number and position of their corresponding burst periods. All these definitions are cyclic, and the entire pattern repeats approximately every 3 hours. Channels can be divided into dedicated channels, which are allocated to a mobile station, and common channels, which are used by mobile stations in idle mode.

5.2.1. Traffic Channels

A traffic channel (TCH) is used to carry speech and data traffic. Traffic channels are defined using a 26-frame multiframe, or group of 26 TDMA frames. The length of a 26-frame multiframe is 120 ms, which is how the length of a burst period is defined (120 ms divided by 26 frames divided by 8 burst periods per frame). Out of the 26 frames, 24 are used for traffic, 1 is used for the Slow Associated Control Channel (SACCH) and 1 is currently unused (see Figure 2). TCHs for the uplink and downlink are separated in time by 3 burst periods, so that the mobile station does not have to transmit and receive simultaneously, thus simplifying the electronics.

In addition to these full-rate TCHs, there are also half-rate TCHs defined, although they are not yet implemented. Half-rate TCHs will effectively double the capacity of a system once half-rate speech coders are specified (i.e., speech coding at around 7 kbps, instead of 13 kbps). Eighth-rate TCHs are also specified, and are used for signalling. In the recommendations, they are called Stand-alone Dedicated Control Channels (SDCCH).

10 | P a g e

Page 162: Mobile Computing Unit 1 , 2

Fig.6. Organization of bursts, TDMA frames, and multiframes for speech and data

5.2.2. Control Channels

Common channels can be accessed both by idle mode and dedicated mode mobiles. The common channels are used by idle mode mobiles to exchange the signalling information required to change to dedicated mode. Mobiles already in dedicated mode monitor the surrounding base stations for handover and other information. The common channels are defined within a 51-frame multiframe, so that dedicated mobiles using the 26-frame multiframe TCH structure can still monitor control channels. The common channels include:

5.2.2.1. Broadcast Control Channel (BCCH)

Continually broadcasts, on the downlink, information including base station identity, frequency allocations, and frequency-hopping sequences.

5.2.2.2. Frequency Correction Channel (FCCH) and Synchronisation Channel (SCH)

Used to synchronise the mobile to the time slot structure of a cell by defining the boundaries of burst periods, and the time slot numbering. Every cell in a GSM network broadcasts exactly one FCCH and one SCH, which are by definition on time slot number 0 (within a TDMA frame).

5.2.2.3. Random Access Channel (RACH)

Slotted Aloha channel used by the mobile to request access to the network.

5.2.2.4. Paging Channel (PCH)

Used to alert the mobile station of an incoming call.

11 | P a g e

Page 163: Mobile Computing Unit 1 , 2

5.2.2.5. Access Grant Channel (AGCH)

Used to allocate an SDCCH to a mobile for signalling (in order to obtain a dedicated channel), following a request on the RACH.

5.3. Burst Structure

There are four different types of bursts used for transmission in GSM. The normal burst is used to carry data and most signalling. It has a total length of 156.25 bits, made up of two 57 bit information bits, a 26 bit training sequence used for equalization, 1 stealing bit for each information block (used for FACCH), 3 tail bits at each end, and an 8.25 bit guard sequence, as shown in Figure 2. The 156.25 bits are transmitted in 0.577 ms, giving a gross bit rate of 270.833 kbps.

The F burst, used on the FCCH, and the S burst, used on the SCH, have the same length as a normal burst, but a different internal structure, which differentiates them from normal bursts (thus allowing synchronization). The access burst is shorter than the normal burst, and is used only on the RACH.

5.4. Speech Coding

GSM is a digital system, so speech which is inherently analog, has to be digitized. The method employed by ISDN, and by current telephone systems for multiplexing voice lines over high speed trunks and optical fiber lines, is Pulse Coded Modulation (PCM). The output stream from PCM is 64 kbps, too high a rate to be feasible over a radio link. The 64 kbps signal, although simple to implement, contains much redundancy. The GSM group studied several speech coding algorithms on the basis of subjective speech quality and complexity (which is related to cost, processing delay, and power consumption once implemented) before arriving at the choice of a Regular Pulse Excited -- Linear Predictive Coder (RPE--LPC) with a Long Term Predictor loop. Basically, information from previous samples, which does not change very quickly, is used to predict the current sample. The coefficients of the linear combination of the previous samples, plus an encoded form of the residual, the difference between the predicted and actual sample, represent the signal. Speech is divided into 20 millisecond samples, each of which is encoded as 260 bits, giving a total bit rate of 13 kbps. This is the so-called Full-Rate speech coding. Recently, an Enhanced Full-Rate (EFR) speech coding algorithm has been implemented by some North American GSM1900 operators. This is said to provide improved speech quality using the existing 13 kbps bit rate.

5.5. Channel Coding and Modulation

Because of natural and man-made electromagnetic interference, the encoded speech or data signal transmitted over the radio interface must be protected from errors. GSM uses convolutional encoding and block interleaving to achieve this protection. The exact algorithms used differ for speech and for different data rates. The method used for speech blocks will be described below.

12 | P a g e

Page 164: Mobile Computing Unit 1 , 2

Recall that the speech codec produces a 260 bit block for every 20 ms speech sample. From subjective testing, it was found that some bits of this block were more important for perceived speech quality than others. The bits are thus divided into three classes:

• Class Ia 50 bits - most sensitive to bit errors • Class Ib 132 bits - moderately sensitive to bit errors • Class II 78 bits - least sensitive to bit errors

Class Ia bits have a 3 bit Cyclic Redundancy Code added for error detection. If an error is detected, the frame is judged too damaged to be comprehensible and it is discarded. It is replaced by a slightly attenuated version of the previous correctly received frame. These 53 bits, together with the 132 Class Ib bits and a 4 bit tail sequence (a total of 189 bits), are input into a 1/2 rate convolutional encoder of constraint length 4. Each input bit is encoded as two output bits, based on a combination of the previous 4 input bits. The convolutional encoder thus outputs 378 bits, to which are added the 78 remaining Class II bits, which are unprotected. Thus every 20 ms speech sample is encoded as 456 bits, giving a bit rate of 22.8 kbps.

To further protect against the burst errors common to the radio interface, each sample is interleaved. The 456 bits output by the convolutional encoder are divided into 8 blocks of 57 bits, and these blocks are transmitted in eight consecutive time-slot bursts. Since each time-slot burst can carry two 57 bit blocks, each burst carries traffic from two different speech samples.

Recall that each time-slot burst is transmitted at a gross bit rate of 270.833 kbps. This digital signal is modulated onto the analog carrier frequency using Gaussian-filtered Minimum Shift Keying (GMSK). GMSK was selected over other modulation schemes as a compromise between spectral efficiency, complexity of the transmitter, and limited spurious emissions. The complexity of the transmitter is related to power consumption, which should be minimized for the mobile station. The spurious radio emissions, outside of the allotted bandwidth, must be strictly controlled so as to limit adjacent channel interference, and allow for the co-existence of GSM and the older analog systems (at least for the time being).

5.6. Multipath Equalization

At the 900 MHz range, radio waves bounce off everything - buildings, hills, cars, airplanes, etc. Thus many reflected signals, each with a different phase, can reach an antenna. Equalization is used to extract the desired signal from the unwanted reflections. It works by finding out how a known transmitted signal is modified by multipath fading, and constructing an inverse filter to extract the rest of the desired signal. This known signal is the 26-bit training sequence transmitted in the middle of every time-slot burst. The actual implementation of the equalizer is not specified in the GSM specifications.

5.7. Frequency Hopping

The mobile station already has to be frequency agile, meaning it can move between a transmit, receive, and monitor time slot within one TDMA frame, which normally are on different frequencies. GSM makes use of this inherent frequency agility to implement slow frequency

13 | P a g e

Page 165: Mobile Computing Unit 1 , 2

hopping, where the mobile and BTS transmit each TDMA frame on a different carrier frequency. The frequency hopping algorithm is broadcast on the Broadcast Control Channel. Since multipath fading is dependent on carrier frequency, slow frequency hopping helps alleviate the problem. In addition, co-channel interference is in effect randomized.

5.8. Discontinuous Transmission

Minimizing co-channel interference is a goal in any cellular system, since it allows better service for a given cell size, or the use of smaller cells, thus increasing the overall capacity of the system. Discontinuous transmission (DTX) is a method that takes advantage of the fact that a person speaks less that 40 percent of the time in normal conversation , by turning the transmitter off during silence periods. An added benefit of DTX is that power is conserved at the mobile unit.

The most important component of DTX is, of course, Voice Activity Detection. It must distinguish between voice and noise inputs, a task that is not as trivial as it appears, considering background noise. If a voice signal is misinterpreted as noise, the transmitter is turned off and a very annoying effect called clipping is heard at the receiving end. If, on the other hand, noise is misinterpreted as a voice signal too often, the efficiency of DTX is dramatically decreased. Another factor to consider is that when the transmitter is turned off, there is total silence heard at the receiving end, due to the digital nature of GSM. To assure the receiver that the connection is not dead, comfort noise is created at the receiving end by trying to match the characteristics of the transmitting end's background noise.

5.9. Discontinuous Reception

Another method used to conserve power at the mobile station is discontinuous reception. The paging channel, used by the base station to signal an incoming call, is structured into sub-channels. Each mobile station needs to listen only to its own sub-channel. In the time between successive paging sub-channels, the mobile can go into sleep mode, when almost no power is used.

5.10. Power Control

There are five classes of mobile stations defined, according to their peak transmitter power, rated at 20, 8, 5, 2, and 0.8 watts. To minimize co-channel interference and to conserve power, both the mobiles and the Base Transceiver Stations operate at the lowest power level that will maintain an acceptable signal quality. Power levels can be stepped up or down in steps of 2 dB from the peak power for the class down to a minimum of 13 dBm (20 milliwatts).

The mobile station measures the signal strength or signal quality (based on the Bit Error Ratio), and passes the information to the Base Station Controller, which ultimately decides if and when the power level should be changed. Power control should be handled carefully, since there is the possibility of instability.

14 | P a g e

Page 166: Mobile Computing Unit 1 , 2

6. GSM SUBSCRIBER SERVICES

There are two basic types of services offered through GSM. The first type is the teleservices which offers telephony and the second type is the bearer services which offers data transmission. Telephony services are mainly voice services that provide subscribers with the complete capability which includes the necessary terminal equipment to communicate with other subscribers. Data services provide the capacity necessary to transmit appropriate data signals between two access points providing an interface to the network. In addition to telephony, the following are subscriber services that are supported by the GSM Network:

• Dual-Tone Multi-Frequency• Facsimile Group III• Short Message Services• Cell Broadcast• Voice Mail• Fax Mail• Supplementary Services:

o Call Forwardingo Barring of Outgoing Callso Barring of Incoming Callso Advice of Chargeo Call Holdo Call Waitingo Multi-Party Serviceo Calling Line Identification Presentation/Restriction.o Closed User Groups

15 | P a g e

Page 167: Mobile Computing Unit 1 , 2

7. GSM CORE NETWORK EVOLUTIONARY PATH

6.1. Implementing GPRS along with the existing GSM architecture

Basically GPRS can be introduced mainly as a software upgrade to existing stations, which often can be done remotely from a central maintenance point because there wasn’t much change in the network hardware. This software enables voice and data users to share the base stations resource and the same air interface.

Fig.6. The integration of GPRS elements with GSM elements

In GSM, the interface is standardized to help connectivity between multiple base stations and a BSC. This interface can remain unchanged when GPRS is introduced in order to make the transition as smooth as possible. The data being transferred consists of both GPRS packet data and GSM data because these components share the same air interface. In order to achieve efficient packet data usage, different core networks are required and these concepts can be seen in Figure 6 above.

1) The existing GSM core network for circuit-switched data.2) New GPRS core network for packet data.

The BSC must divide the different data flows and direct them to the right network. This additional functionality requires new hardware at the BSC: the Packet Control Unit (PCU). The PCU separates packet data and circuit-switched data when it is received from the MS and multiplexes the different data streams from circuit-switched and packet-switched core networks into regular streams that go down to the cells. The PCU is an autonomous unit and could be physically separated from the BSC. The BSC also needs a software upgrade for GPRS in order to

16 | P a g e

Page 168: Mobile Computing Unit 1 , 2

handle the new logical packet data. Therefore, most of the new functionalities added to the GPRS air interface are implemented in the BSC. One BSC is connected to several base stations, one MSC and one Serving GPRS Support Node (SGSN).

7.1.1 The GPRS core network

The GPRS core network consists of two main components (nodes). These two components are integrated in the existing GSM network: the Serving GPRS Support Node (SGSN) and the Gateway GPRS Network Node (GGSN), which together are called the GSN nodes. The integration of the GPRS core network and an existing GSM network is shown in Figure 7 below.

Fig.7. The GPRS core components integrated with GSM components

To connect these new nodes to the radio network, a new open interface should be used. This new interface is called Gb. Gb is a high-speed Frame-Relay link that is based on E1 or T1 connections. The connection between different GSN nodes and other components of the core network is called the GPRS backbone (can be seen in figure 3). The backbone is a regular IP network that has access routers, firewalls and so on. The backbone can also be used to connect to other GPRS systems. Usually, the backbone is also connected to the operator's billing system via a billing gateway.

The SGSN is the main component which enables the mobility of GPRS users. When connected to a GPRS network, The MS has a logical connection to its SGSN through which it can perform delivery between different cells without any change in the logical connection. The SGSN keeps track of which BSC to use when sending packets to a MS originating from outside networks. Its functionality is similar to a regular IP router, but it has an added functionality for handling mobile network issues.

If the user moves from one SGSN service area to another SGSN service area, an inter-SGSN delivery can be performed. Most of the time, the user won't notice the delivery although

17 | P a g e

Page 169: Mobile Computing Unit 1 , 2

the packets that were currently buffered in the old SGSN might be discarded and re-sent by using higher layers.

The characteristics of a radio link are very different from those of a fixed link and bits over the air are more likely to be lost and as a result some additional functionality is needed. When a MS is connected to a site on the internet, for example, the majority of data loss occurs over the wireless link, and handling that with higher level protocols such as TCP would be wasteful. It is preferred, in our case, to have a quick retransmission protocol that only covers the wireless part and hides the loss from TCP, enabling it to fulfill its original task. For that goal we have the RLC protocol which operates within the MS and the base station and resends data that was lost over the air. The Logical Link Control (LLC) protocol which is located between the MS and the SGSN can be configured to perform similar functionality.

The GGSN is actually a combined gateway, a firewall and an IP router. The GGSN handles interfaces to external IP networks, internet service providers (ISPs), routers, and other close nodes. From the external networks point of view, the GGSN appears as a gateway that can route packets to the users within its domain. The GGSN keeps track of the SGSN to which a specified MS is connected and forwards packets to it. The SGSN and GGSN can either be located together in a compact GSN (CGSN) solution or placed far from each other and connected via the backbone as seen in Figure 7.

The backbone can be shared with other operators. Thus, the GPRS Tunneling Protocol (GTP) is used for management (will be elaborated later on). Packets that travel over the GPRS backbone have a stack with IP and TCP at two levels (as detailed in the protocol stack section). This is inefficient, but it makes communication secure and easier to implement.

7.1.2 The New Interfaces

The GPRS backbone will enable point-to-point calls, inter-working with the BSS, HLR, MSC, GMSC and the internet. New interfaces have been developed for GPRS. These interfaces are labeled with Gx in their names where x stands for a variety of interfaces as can be seen in figure 4.

Fig.8. GPRS new interfaces

18 | P a g e

Page 170: Mobile Computing Unit 1 , 2

The Gn and Gp interfaces are defined between two SGSNs. This enables the SGSNs to exchange user profiles when a mobile station moves from one SGSN area to another. The Gi interface connects the PLMN with external private or public PDNs, such as the Internet or corporate intranets. There is a support for interfaces to IP (IPv4 and IPv6) and X.25 networks.

The HLR stores the current SGSN address, the user profile and the PDP address for each GPRS user in the PLMN. The Gr interface is used to exchange this information between SGSN and HLR. For example, the SGSN informs the HLR about the current location of the MS. When the MS registers with a new SGSN, the HLR sends the user profile to the new SGSN. The signaling path between GGSN and HLR (Gc interface) might be used by the GGSN to query a user's location and profile in order to update its location register.

Furthermore, the MSC/VLR may be extended with functions that allow efficient coordination between packet switched (GPRS) and circuit switched (conventional GSM) services. Paging requests of circuit switched GSM calls can be performed via the SGSN. For this purpose, the Gs interface connects the data bases of SGSN and MSC/VLR. To exchange SMS messages via GPRS, the Gd interface is used. It interconnects the SGSN with the SMS gateway MSC (SMS-GMSC).

19 | P a g e

Page 171: Mobile Computing Unit 1 , 2

8. REFERENCES

Architecture of the GSM network. Mobile is Good. 28 April 2008. <http://www.mobileisgood.com/ArchitectureOfTheGSMNetwork.php>

GSM Architecture. Argos Press. 28 April 2008.<http://www.argospress.com/Resources/gsm/gsmarchit.htm>

GSM Phone Information Network. GSM Phone. 28 April 2008.<http://www.gsmphone.us/network.html>

Introduction to GSM Networks. Wiley. 29 April 2008. <http://media.wiley.com/product_data/excerpt/49/04700169/0470016949.pdf>

History of GSM and More. LD Post. 29 April 2008. <http://www.ldpost.com/telecom-articles/History-of-GSM-and-More.html>

Network Architecture. 06 February 2003. Radio Corp. 29 April 2008. <http://www2.rad.com/networks/2003/gprs/arch_nw.htm>

GSM Security network. GSM Security. 29 April 2008. <http://www.gsm-security.net/faq/gsm-network.shtml>

Global System for Mobile Communication (GSM). 29 May 2008. <http://www.rjl.com.au/doctype/documents_public/GSM%20tutorial.pdf>

Introduction to GSM, the Global System for Mobile Communication. GSM Favourites. 29 May 2008. <http://www.gsmfavorites.com/documents/introduction/mobile/>

GSM – Architecture. Tutorials Point. 1 May 2008. <http://www.tutorialspoint.com/gsm/gsm_architecture.htm>

GSM - The Mobile Station. Tutorials Point. 1 May 2008. <http://www.tutorialspoint.com/gsm/gsm_mobile_station.htm>

GSM - The Base Station Subsystem (BSS). Tutorials Point. 1 May 2008. <http://www.tutorialspoint.com/gsm/gsm_base_station_subsystem.htm>

The Network Switching Subsystem (NSS). Tutorials Point. 1 May 2008. <http://www.tutorialspoint.com/gsm/gsm_network_switching_subsystem.htm>

20 | P a g e

Page 172: Mobile Computing Unit 1 , 2

The Operation Support Subsystem(OSS). Tutorials Point. 1 May 2008. <http://www.tutorialspoint.com/gsm/gsm_operation_support_subsystem.htm>

21 | P a g e

Page 173: Mobile Computing Unit 1 , 2

Balancing Push and Pull for Data Broadcast�

Swarup AcharyaBrown [email protected]

Michael FranklinUniversity of [email protected]

Stanley ZdonikBrown [email protected]

����������� �

The increasing ability to interconnect computers through internet-working, wireless networks, high-bandwidth satellite, and cablenetworks has spawned a new class of information-centered appli-cations based on data dissemination. These applications employbroadcast to deliver data to very large client populations. We haveproposed the Broadcast Disks paradigm [Zdon94, Acha95b] for or-ganizing the contents of a data broadcast program and for manag-ing client resources in response to such a program. Our previouswork on Broadcast Disks focused exclusively on the “push-based”approach, where data is sent out on the broadcast channel accord-ing to a periodic schedule, in anticipation of client requests. Inthis paper, we study how to augment the push-only model with a“pull-based” approach of using a backchannel to allow clients tosend explicit requests for data to the server. We analyze the scala-bility and performance of a broadcast-based system that integratespush and pull and study the impact of this integration on both thesteady state and warm-up performance of clients. Our results showthat a client backchannel can provide significant performance im-provement in the broadcast environment, but that unconstrained useof the backchannel can result in scalability problems due to serversaturation. We propose and investigate a set of three techniques thatcan delay the onset of saturation and thus, enhance the performanceand scalability of the system.

����� ����������� ����� �������� ��� � �����! #"$� � ������ �

Many emerging applications involve the dissemination of data tolarge populations of clients. Examples of such dissemination-basedapplications include information feeds (e.g., stock and sports tick-ers or news wires), traffic information systems, electronic newslet-ters, software distribution, and entertainment delivery. A key en-abling technology for dissemination-based applications has beenthe development and increasing availability of mechanisms for%This work has been partially supported by the NSF under grant IRI-9501353,

ONR grant number N00014-91-J-4085 under ARPA order number 8220, an IBM Co-operative Graduate Fellowship, and by research funding and equipment from IntelCorporation.

Appears in the Proceedings of ACM SIGMOD Conference, Tuscon,Arizona, May 1997

high-bandwidth data delivery. In particular, advances in internet-working, wireless communications, and satellite, cable, and tele-phone networks have enabled sophisticated content to be providedto users at the office, at home, and even on the road.

Data broadcast technology stands to play a primary role indissemination-based applications for two reasons. First, data dis-semination is inherently a 1-to-n (or m-to-n where &('*) ) pro-cess. That is, data is distributed from a small number of sourcesto a much larger number of clients that have overlapping inter-ests. Thus, any particular data item is likely to be distributed tomany clients. Second, much of the communication technology thathas enabled large-scale dissemination supports broadcast, and is,in some cases, intended primarily for broadcast use. For exam-ple, direct broadcast satellite providers such as Hughes’ DirecPC[Dire96], and cable television (CATV) companies (through the useof high-bandwidth cable modems) are now, or will soon be, capableof supporting multi-megabit per second data broadcast to millionsof homes and offices. Wireless networking technology for support-ing mobile users also necessarily employs a broadcast component,and broadcast (at least in a limited form) is even supported on theInternet through protocols such as IP Multicast which is the basisof the MBone[Erik94].

����+�, ��"-"-� � ��� ������ � �.�/��0�"-"1 2���0

A key aspect of dissemination-based systems is their inherent com-munications asymmetry. By communications asymmetry, we meanthat the volume of data transmitted in the downstream direction(i.e., from server(s) to clients) is much greater than the volumetransmitted in the upstream direction. Such asymmetry can resultfrom several factors, including:

Network Asymmetry — In many networks the bandwidth ofthe communication channel from the server to the clients is muchgreater than the bandwidth in the opposite direction. An environ-ment in which clients have no backchannel is an extreme exam-ple of network asymmetry. Less extreme examples include wire-less networks with high-speed downlinks but slow (e.g., cellular)uplinks, and cable television networks, where bandwidth into thehome is on the order of megabits per second, while a small num-ber of slow channels (on the order of tens of kilobits per second)connect a neighborhood to the cable head.

Client to Server Ratio — A system with a small number ofservers and a much larger number of clients (as is the case indissemination-based applications) also results in asymmetry be-cause the server message and data processing capacity must be di-vided among all of the clients. Thus, clients must be careful toavoid “swamping” the server with too many messages and/or toomuch data.

1

Page 174: Mobile Computing Unit 1 , 2

Data Volume — A third way that asymmetry arises is due tothe volume of data that is transmitted in each direction. Informa-tion retrieval applications typically involve a small request mes-sage containing a few query terms or a URL (i.e., the “mouse andkey clicks”), and result in the transfer of a much larger object orset of objects in response. For such applications, the downstreambandwidth requirements of each client are much higher than theupstream bandwidth requirements.

Updates and New Information — Finally, asymmetry can alsoarise in an environment where newly created items or updates toexisting data items must be disseminated to clients. In such cases,there is a natural (asymmetric) flow of data in the downstream di-rection.

From the above list, it should be clear that asymmetry can arisenot only due to the properties of the communications network, butcan arise even in a “symmetric” environment due to the nature ofthe data flow in the application. Thus, dissemination-based appli-cations such as those for which the Broadcast Disks approach isintended will be asymmetric irrespective of the addition of a clientbackchannel.

Asymmetry imposes constraints on the behavior of clients andservers in a networked application. For example, in a system with ahigh client-to-server ratio, clients must limit their interactions withthe server to a level which the server and backchannel can han-dle. World-Wide-Web (WWW) and File Transfer Protocol (FTP)servers deal with this problem by limiting the number of connec-tions they are willing to accept at a given time. Such a limitationcan result in delays when accessing popular sites, such as a sitecontaining a new release of a popular software package or one con-taining up-to-date information on elections, sporting events, stocks,etc.

��� � � �������2� ��� ����

In previous work we have proposed and studied Broadcast Disksas a means for coping with communications asymmetry [Zdon94,Acha95b]. This approach addresses broadcast scheduling andclient-side storage management policies for the periodic broadcastof data. With Broadcast Disks, a server uses its best knowledge ofclient data needs (e.g., as provided by client profiles) to constructa broadcast schedule containing the items to be disseminated andrepetitively transmits this “broadcast program” to the client popu-lation. Clients monitor the broadcast and retrieve the items theyrequire (i.e., those that may be needed locally but are not currentlycached in local storage) as they come by. In such a system, dataitems are sent from the server to the clients without requiring aspecific request from the clients. This approach is referred to aspush-based data delivery. The combination of push-based data de-livery and a broadcast medium is well suited for data disseminationdue to its inherent scalability. Because clients are largely passive ina push-based system, the performance of any one client receivingdata from the broadcast is not directly affected by other clients thatare also monitoring the broadcast.

In contrast to a periodic broadcast approach, traditional client-server database systems and object repositories transfer data using apull-based, request-response style of operation (e.g., RPC). Usingrequest-response, clients explicitly request data items by sendingmessages to a server. When a data request is received at a server, theserver locates the information of interest and returns it to the client.Pull-based access has the advantage of allowing clients to play amore active role in obtaining the data they need, rather than relyingsolely on the schedule of a push-based server. However, there aretwo obvious disadvantages to pull-based access. First, clients mustbe provided with a backchannel over which to send their requeststo the server. In some environments, such as wireless networksand CATV, the provision of a backchannel can impose substantial

additional expense. Second, the server must be interrupted continu-ously to deal with pull requests and can easily become a scalabilitybottleneck with large client populations. This latter problem canbe mitigated, to some extent, by delivering pulled data items over abroadcast channel and allowing clients to “snoop” on the broadcastto obtain items requested by other clients.

��� � � ����2�� � �������� � �� #�

In this paper, we extend our previous work on data broadcasting byintegrating a pull-based backchannel with the push-based Broad-cast Disks approach. We focus on the tradeoffs in terms of perfor-mance and scalability between the push and pull approaches andinvestigate ways to efficiently combine the two approaches for boththe steady-state and warm-up phases of operation. Client requestsare facilitated by providing clients with a backchannel for sendingmessages to the server. While there are many ways in which theclients could use this capability (e.g., sending feedback and usageprofiles), in this study we focus on the use of the backchannel toallow clients to pull pages that are not available in the client cacheand that will not appear quickly enough in the broadcast.

The issues we address include: 1) the impact of client requestson steady-state and warm-up performance and the scalability of thatperformance; 2) the allocation of broadcast bandwidth to pushedand pulled pages; 3) techniques to maximize the benefit of clientrequests while avoiding server congestion; 4) the sensitivity of theperformance to the variance in client access patterns; and 5) theimpact of placing only a subset of the database on the BroadcastDisk, thereby forcing clients to pull the rest of the pages.

In this study, we model a system with multiple clients and asingle server that controls the broadcast. Clients are provided witha backchannel, but the server has a bounded capacity for acceptingrequests from clients. In a lightly loaded system, backchannel re-quests are considered to be inexpensive. The limited capacity of theserver, however, means that as the system approaches saturation,client requests become more likely to be dropped (i.e., ignored) bythe server. Thus, the effectiveness of the backchannel for any oneclient depends on the level of backchannel activity created by theother clients.

This study adopts several assumptions about the environment:

1. Independence of frontchannel and backchannel. In ourmodel, traffic on the backchannel in no way interferes withthe bandwidth capability of the frontchannel. While this isnot always the case for network technologies like Ethernetwhich share the channel, it is true of many others where theuplink and the downlink channels are physically different asin CATV networks and DirecPC.

2. Broadcast program is static. While having dynamic clientprofiles and therefore, dynamic broadcast programs is inter-esting, we reserve this problem for a future study. We do,however, study both the steady-state performance and thewarm-up time for clients.

3. Data is read only. In previous work, we studied techniquesfor managing volatile data in a Broadcast Disk environment[Acha96b]. We showed that, for moderate update rates, it ispossible to approach the performance of the read-only case.Thus, in order to make progress on the problem at hand, wehave temporarily ignored that issue here.

The remainder of the paper is structured as follows: In Section2, we describe the extensions that we made to our previous work inorder to combine pull-based data delivery with our existing push-based scheme. In Section 3, we sketch the approach that we tookto simulating the combined push-pull environment, and in Section

2

Page 175: Mobile Computing Unit 1 , 2

a

b

d

a

c

ea

b

f

a

gc

Figure 1: Example of a 7-page, 3-disk broadcast program

4, we present the performance results. Section 5 discusses relatedwork. Section 6 summarizes the results of the paper.

+ � �� �� ��� ���� ��!���� 2����� ���

In this section we briefly sketch the Broadcast Disk approach(for more detail, see [Acha95b]) and present a high-level view ofthe extensions made to the approach to incorporate a pull-basedbackchannel.

+���� � ������� ���� � �����2�The Broadcast Disk paradigm is based on a cyclic broadcast ofpages (or objects) and a corresponding set of client cache manage-ment techniques. In earlier work, we have demonstrated that thelayout of the broadcast and the cache management scheme must bedesigned together in order to achieve the best performance.

Using Broadcast Disks, groups of pages (a.k.a., disks) are as-signed different frequencies depending on their probability of ac-cess. This approach allows the creation of an arbitrarily fine-grained memory hierarchy between the client and the server. Un-like most memory hierarchies whose parameters are determined byhardware, however, the shape of this memory hierarchy can be ad-justed to fit the application using software. Figure 1 shows a simplebroadcast program for the seven pages named , , � , � , , � , and � .These pages are placed on three disks with relative spinning speedsof 4:2:1. Page is on the fastest disk, pages and � are on themedium speed disk, and pages � , , � , and � are on the slowestdisk.

The number of pages in one complete cycle (i.e., the period) ofthe broadcast is termed the major cycle. The example broadcast inFigure 1 has a major cycle length of 12 pages. The algorithm usedby the server to generate the broadcast schedule requires the fol-lowing inputs: the number of disks, the relative frequency of eachdisk and assignments of data items to the disks on which they areto be broadcast. The algorithm is described in detail in [Acha95a].

Our previous work has shown that a cache replacement algo-rithm that is based purely on access probabilities (e.g., LRU) canperform poorly in this environment. Better performance is achievedby using a cost-based replacement algorithm that takes the fre-quency of broadcast into account. One such algorithm that we de-veloped is called ����� . If � is the probability of access and � is thefrequency of broadcast, ����� , ejects the cached page with the low-est value of ����� . Let ��� be the probability of access of page i andlet � � be the broadcast frequency of page i. If �����! #" $ , �%�&�!' ,�%()�* #",+ and ��()�-+ , then page will always be ejected beforepage even though its probability of access is higher. Intuitively,

the value of a page depends not only on the access probability butalso on how quickly it arrives on the broadcast.

+���+ � � �� � ������ �.� �� ��/� � �� � � ��In this paper, we introduce a backchannel into the Broadcast Diskenvironment. We model the backchannel as a point-to-point con-nection with the server. Thus, the rate at which requests arrive atthe server can grow proportionally with the number of clients. Notethat since request messages are typically small, this assumption isjustifiable even in situations where clients share a physical connec-tion with the server. The server, on the other hand, has a maximumrate at which it can send out pages in response to client requests(as described below), and moreover, it has a finite queue in whichto hold outstanding requests. If a request arrives when the queue isfull, that request is thrown away. 0

In order to support both push-based and pull-based delivery, theserver can interleave pages from the broadcast schedule (i.e., push)with pages that are sent in response to a specific client request (i.e.,pull). The percentage of slots dedicated to pulled pages is a pa-rameter that can be varied. We call this parameter pull bandwidth(PullBW). When PullBW is set to 100%, all of the broadcast slotsare dedicated to pulled pages. This is a pure-pull system. Con-versely, if PullBW is set to 0%, the system is said to be a pure-pushsystem; all slots are given to the periodic broadcast schedule, andthus, there is no reason for clients to send pull requests.

Setting PullBW to a value between these two extremes al-lows the system to support both push and pull. For example, ifPullBW=50%, then at most, one page of pull response is sent foreach page of the broadcast schedule. We define PullBW to be an up-per bound on the amount of bandwidth that will be given to pulledpages. In the case in which there are no pending requests we simplycontinue with the Broadcast Disk schedule, effectively giving theunused pull slots back to the push program. This approach savesbandwidth at the cost of making the layout of the broadcast lesspredictable. 1

It is important to note, that unlike the pure-push case, where theactivity of clients does not directly affect the performance of otherclients, in this environment, overuse of the backchannel by one ormore clients can degrade performance for all clients. There are twostages of performance degradation in this model. First, because therate at which the server can respond to pull requests is bounded, thequeue of requests can grow, resulting in additional latency. Second,because the server queue is finite, extreme overuse of the backchan-nel can result in requests being dropped by the server. The inten-sity of client requests that can be tolerated before these stages arereached can be adjusted somewhat by changing the PullBW param-eter.

+��� � � � ��������� "$�In the remainder of this paper, we compare pure-push, pure-pull,and an integrated push/pull algorithm, all of which use broad-cast. All three approaches involve client-side as well as server-sidemechanisms. In all of these techniques, when a page is needed,the client’s local cache is searched first. Only if there is a cachemiss does the client attempt to obtain the page from the server. Theapproaches vary in how they handle cache misses.

1. Pure-Push. This method of data delivery is the BroadcastDisk mechanism sketched above. Here, all broadcast band-width is dedicated to the periodic broadcast (PullBW=0%)

2The server will also ignore a new request for a page that is already in the request

queue since the processing of the earlier message will also satisfy this new request.3Predictability may be important for certain environments. For example, in mo-

bile networks, predictability of the broadcast can be used to reduce power consump-tion [Imie94b].

3

Page 176: Mobile Computing Unit 1 , 2

and no backchannel is used. On a page miss, clients simplywait for the desired page to appear on the broadcast.

2. Pure-Pull. Here, all broadcast bandwidth is dedicated topulled pages (PullBW=100%) so there is no periodic broad-cast. On a page miss, clients immediately send a pull re-quest for the page to the server. This is the opposite of Pure-Push, that is, no bandwidth is given to the periodic broad-cast. It is still a broadcast method, though, since any pagethat is pulled by one client can be accessed on the frontchan-nel by any other client. This approach can be referred to asrequest/response with snooping.

3. Interleaved Push and Pull (��� � ). This algorithm mixesboth push and pull by allowing clients to send pull requestsfor misses on the backchannel while the server supports aBroadcast Disk plus interleaved responses to the pulls onthe frontchannel. As described previously, the allocation ofbandwidth to pushed and pulled pages is determined by thePullBW parameter.

A refinement to ��� � uses a fixed threshold to limit the useof the backchannel by any one client. The client sends a pull re-quest for page � only if the number of slots before � is sched-uled to appear in the periodic broadcast is greater than the thresh-old parameter called ThresPerc. Threshold is expressed as a per-centage of the major cycle length (i.e., the push period). WhenThresPerc=0%, the client sends requests for all missed pages to theserver. When ThresPerc=100% and the whole database appears inthe push schedule, the client sends no requests since all pages willappear within a major cycle.

�Increasing the threshold has the ef-

fect of forcing clients to conserve their use of the backchannel andthus, minimize the load on the server. A client will only pull a pagethat would otherwise have a very high push latency.

In Section 4, we examine the performance of these different ap-proaches, as well as the impact of parameters such as PullBW andThresPerc (in the case of ��� � ). We also investigate the pull-basedpolicies for cases in which only a subset of the database is broad-cast. In particular, we examine the performance of the system whenthe slowest and the intermediate disk in the broadcast program areincrementally reduced in size.

� � ���� �� � ��� ���� �� ��� ���� ��!��� � � ���� � "$ � �

The results presented in this paper were obtained using a de-tailed model of the Broadcast Disks environment, extended to ac-count for a backchannel. The simulator is implemented usingCSIM [Schw86]. In this section we focus on extensions to theoriginal model needed to integrate pull-based access. Details ofthe original model are available in [Acha95a].

The simulation model is shown in Figure 2. The simulatedclients (represented as ��� and ��� as described below) accessdata from the broadcast channel. They filter every request througha cache (if applicable) and through the threshold algorithm (if ap-plicable) before submitting it to the server using the backchannel.The server can broadcast a page from the broadcast schedule or asa response to a queued page request. This choice is indicated bythe Push/Pull MUX and is based on the value of PullBW. We de-scribe the client and server models in more detail in the followingsections.

����� � �� , � �� � � � ���� ��In our previous studies we modeled only a single client because inthe absence of a backchannel, the performance of any single clientThe case where a server disseminates only a subset of the pages is studied in

Section 4.3.

CacheSize Client cache size (in pages)MC ThinkTime Time between �� page accessesThinkTimeRatio Ratio of �� to �� think timesSteadyStatePerc % �� requests filtered through cacheNoise % workload deviation for ���

Zipf distribution parameter

Table 1: Client Parameter Description

is independent of the other clients once the broadcast program isfixed. With a backchannel, however, there is explicit contentionamong the clients for the use of that channel. Thus, to model abroadcast environment with a backchannel, we must account forthe activity of the competing clients.

We use two client processes to simulate an arbitrarily largeclient population. The first process called the Measured Client( ��� ), models a single client and is analogous to the client sim-ulated in our previous work; it is this client whose performance isreported in the simulation experiments. The second process, theVirtual Client ( ��� ), models the combined effect of all other clientsin the system. The parameters that describe the operation of the��� and ��� are shown in Table 1.

The simulator measures performance in logical time unitscalled broadcast units. A broadcast unit is the time required tobroadcast a single page. The actual response time will depend onthe amount of real time required to transmit a page on the broadcastchannel. The client think times are also stated in broadcast units, sothe relative performance of the approaches are largely independentof the bandwidth of the broadcast medium.

The ��� has a cache that can hold CacheSize pages. It ac-cesses database pages using a Zipf [Knut81] probability distribu-tion. The Zipf distribution (with parameter � ) is frequently usedto model skewed (i.e., non-uniform) access patterns. ��� waitsMC ThinkTime broadcast units between requests. If possible, re-quests are serviced from the cache; otherwise, they are either satis-fied by the broadcast or pulled from the server. In either case, theclient sleeps until the page is retrieved.

The Virtual Client ��� , like ��� , follows a two step “request-think” loop. We use the parameter ThinkTimeRatio to vary the rela-tive intensity of ��� request generation compared to ��� . The thinktime of ��� is drawn from an exponential distribution with a meanof MC ThinkTime/ThinkTimeRatio. Thus, the higher the Think-TimeRatio, the more frequent are ��� ’s requests, and the larger aclient population ��� represents. Like ��� , ��� follows a Zipf dis-tribution to access the database and filters all its requests through acache of CacheSize pages.

When a client begins operation, it brings pages into its cache asit faults on them. This is referred to as the warm-up phase of oper-ation. Once the cache has been full for some time, the client is saidto be in steady state. At any point in time, it is likely that there aresome clients just joining the broadcast, some leaving it, and somein steady-state. Since ��� represents the entire client population(minus the single client ��� ), we assume that some of its requestsare from clients in warm-up and some are from clients in steady-state. In warm-up, a client’s cache is relatively empty, therefore weassume that every access will be a miss. In steady-state, a client’scache is filled with its most important pages, and thus, we filter allrequests through the cache.

We use the parameter SteadyStatePerc to represent the propor-tion of clients in steady-state. Before every access made by ��� , acoin weighted by the parameter SteadyStatePerc is tossed and de-pending on the outcome the request is either a) filtered through thecache (steady-state) or b) directly sent to the server (warm-up).

In a broadcast environment, the server generates a broadcastprogram taking into account the access probabilities of the allclients. Thus, it is very likely that the generated program is sub-

4

Page 177: Mobile Computing Unit 1 , 2

MC VCReq

Thresh.Filter

Cache

BroadcastSchedule

Pull

MUX

ServerQueue

Drop

Req

Thresh.Filter

Cache

Broadcast Server

Broadcast Medium

BackChannel

Push/

Double?

Full?/Q Yes

No

Figure 2: Simulation Model

ServerDBSize No. of distinct pages in broadcastNumDisks No. of disksDiskSize � Size of disk

�(in pages)

RelFreq � Relative broadcast frequency of disk�

ServerQSize Size of back-channel queuePullBW % of broadcast slots for PullThreshPerc Threshold Factor

Table 2: Server Parameter Description

optimal for any single client. We use a parameter called Noise tostudy the sensitivity of ��� ’s response time as its access patterndiverges from that of the “average” client in the system. WhenNoise=0, clients ��� and ��� have exactly the same access patternand thus, the broadcast is ideally suited for all clients. As Noise in-creases, we systematically perturb ��� ’s access pattern away from��� ’s, thereby making the broadcast program less ideal for ��� .Thus, at higher values of Noise, ��� ’s performance can be ex-pected to quite bad. The details of how Noise is implemented havebeen described in our previous work [Acha95a].

In this study, we use the ����� algorithm described in Sec-tion 2.1 to manage the cache when pages are retrieved from theBroadcast Disk. Alternatively, if the clients access the database us-ing Pure-Pull, the page replacement victim is chosen as the cache-resident page with the lowest probability of access (� ). We call thisalgorithm � .

��� + � �� �� #� �2 #� � ���� ��The parameters that describe the operation of the server are shownin Table 2. The server broadcasts pages in the range of 1 toServerDBSize. These pages are interleaved into a broadcast pro-gram as described in Section 2.1. This program is broadcast re-peatedly by the server. The structure of the broadcast programis described by several parameters. NumDisks is the number oflevels (i.e., “disks”) in the multi-disk program. DiskSize � , ���[1..NumDisks], is the number of pages assigned to each disk � . Eachpage is broadcast on exactly one disk, so the sum of DiskSize � overall � is equal to the ServerDBSize. The frequency of broadcast ofeach disk � relative to the slowest disk is given by the parameter� ����� �� � . It is assumed that the lower numbered disks have higherbroadcast frequency.

Since the ��� captures the entire client population (except oneclient), the server uses its access pattern to generate the broadcast.The simplest strategy for assigning pages to disks is to place theDiskSize 0 hottest pages (from ��� ’s perspective) on Disk #1, the

next DiskSize 1 hottest pages on Disk #2, etc. This mapping, how-ever, may be sub-optimal if clients have a cache. Heavily accessedpages tend to be cached at clients, making their frequent broadcasta waste of bandwidth. In such cases, the best broadcast program(for the steady-state) is obtained by shifting these cached pagesfrom the fastest disk to the slowest disk. Thus, the server shifts itsCacheSize hottest pages to the slowest disk, moving colder pages tofaster disks. We call this shifted program, a broadcast with Offset.All results presented in this paper use OffSet.

The size of the server backchannel queue is given by the pa-rameter ServerQSize. We assume that the client gets no feedbackfrom the server about the success or failure of a request. A requestis dropped if either the queue is already full or if there is a pre-existing queued request for the page already. The queue is servicedin a FIFO fashion and the service rate is determined by the param-eter PullBW. PullBW determines the percentage of the broadcastslots allocated for pages explicitly pulled by the clients. Beforeevery page is broadcast, a coin weighted by PullBW is tossed anddepending on the outcome, either the requested page at the headof queue is broadcast or the regular broadcast program continues.Note that the regular broadcast is not interrupted if the server queueis empty and thus, PullBW is only an upper limit on the bandwidthused to satisfy backchannel requests. As described earlier, clientsmake an explicit pull request only if the next arrival of the page isgreater than a fixed threshold. The value of the threshold is given byThreshPerc * MajorCycleSize, where MajorCycleSize is the size ofa single period of the broadcast (as described in Section 2.1). Notethat threshold-based filtering is not meaningful when the Pure-Pullapproach is used. In that case, every cache miss results in an ex-plicit request to the server, and the entire broadcast bandwidth isdedicated to satisfying client pull requests.

�� �� #���"$ � ������ 2� ��� ���

In this section, we use the simulation model to explore the trade-offs between using push and pull to access data in a broadcast envi-ronment. The primary performance metric is the average responsetime (i.e., the expected delay) at the client measured in broadcastunits.

Table 3 shows the parameter settings for these experiments. Theserver database size (ServerDBSize) is 1000 pages and a three-diskbroadcast is used for all the experiments. The size of the fastestdisk is 100 pages, the medium disk is 400 pages and the slowestdisk is 500 pages. The relative spin speeds of the three disks are 3,2 and 1, respectively. The client cache size is 100 pages (10% of

5

Page 178: Mobile Computing Unit 1 , 2

CacheSize 100ThinkTime 20ThinkTimeRatio 10, 25, 50, 100, 250SteadyStatePerc 0%, 95%Noise 0%, 15%, 35%�

0.95ServerDBSize 1000NumDisks 3�������� ���

0�� 1� � 100, 400, 500 ����������0�� 1� � 3, 2, 1

ServerQSize 100PullBW 10%, 20%, 30%, 40%, 50%ThresPerc 0%, 10%, 25%, 35%

Table 3: Parameter Settings

the database). The back-channel queue can hold up to 100 requestsfor distinct pages, and the percentage of slots on the broadcast al-located to pull pages (for ��� � ) is varied from 10% to 50%. The��� ThinkTime is set to 20 broadcast units, and the ThinkTimeRa-tio is varied so that the ��� generates requests from 10 to 250 timesmore frequently than the measured client. This can be thought of asplacing an additional load on the server that is equivalent to a clientpopulation of ThinkTimeRatio clients operating at the same rate asthe ��� .

Except were explicitly noted, the response time results wereobtained once the client reached steady state. For the steady-statenumbers, the cache warm-up effects were eliminated by startingmeasurements only 4000 accessesafter the cache filled up and then,running the experiment until the response time stabilized. It shouldbe noted that the results described in this section are a small subsetof the results that have been obtained. These results have beenchosen because they demonstrate many of the unique performanceaspects and tradeoffs of this environment, and because they identifyimportant areas for future study.

��� � � �����"$ � � ��� � ������ � ���� 2��� �In the first experiment, we examine the basic tradeoffs between apure push-based approach, a pure pull-based approach, and ��� � ,which combines the two in a straightforward manner as describedin Section 2.3.

��� ��� ���� 2���0�� � ����� � �� � ��� "$ � �

Figure 3(a) shows the expected average response time of requestsmade by the ��� once steady-state has been reached vs. the Think-TimeRatio. In this case, for ��� � , PullBW is set to 50%; that is, upto half the broadcast bandwidth is dedicated to broadcasting pulledpages (i.e., those requested on the backchannel). Of course, in thePure-Push and Pure-Pull case, the entire broadcast bandwidth isdedicated to pages on the periodic broadcast and to the pulled pagesrespectively.

Five curves are shown. The performance of Pure-Push is a flatline at 278 broadcast units. Pure-Push does not allow clients to usethe backchannel, so its performance is independent of the size ofthe client population (or ThinkTimeRatio). For each of the two pull-based approaches (i.e., Pure-Pull, and ��� � ), two separate curvesare shown. These curves, labeled as 0% and 95%, show the casesin which the ��� ’s access pattern is generated as if 0% and 95%of the clients it represents are in the steady-state, respectively (i.e.,SteadyStatePerc = 0% or 95%). Clients in steady-state are assumedto have completely warmed-up caches containing the highest val-ued pages. ��For Pure-Pull the measure of value is � (i.e., probability of access � ), while for� � � it is � �"! (i.e., � divided by the frequency of occurrence in the push broadcast

schedule).

In general, for the pull-based schemes, better steady-state per-formance is achieved when most of the other clients are also in thesteady-state (e.g., the 95% curves). This behavior is to be expected— a client is likely to have better performance if its needs fromthe broadcast are similar to the needs of the majority of the clientpopulation. Clients that are in the warm-up state (or that do nothave caches) are likely to request the highest valued pages, thus,a considerable amount of the bandwidth dedicated to pulled pagesis likely to be taken up by such pages. In contrast, once clientsare in steady-state, they do not access the # ��$ &% ��'� )( + high-est valued pages from the broadcast (they are obtained from theclient cache), which frees up bandwidth for the next-most impor-tant pages. In this experiment, since the ��� performance is beingmeasured only after it has reached steady-state, it gains more ben-efit from the pulled pages when most of the other clients (i.e., the��� ) are in steady-state as well. *

At the left side of the graph, since the system is very lightlyloaded, the requests sent to the server via the backchannel are ser-viced almost immediately. At the extreme left (ThinkTimeRatio= 10) all of the requests made by all clients are serviced quickly.In this case, the pull-based approaches perform similarly and sev-eral orders of magnitude better than Pure-Push. + . In a very lightlyloaded system, pull-based approaches are able to provide muchmore responsive, on-demand access to the database, and since ourmodel does not impose any costs for uplink usage, there is no in-centive for a push-based approach in this case.

As the load on the server is increased (i.e., increasing Think-TimeRatio), however, the performance of the pull-based approachesbegins to degrade. Beyond a ThinkTimeRatio of 50, all of the pull-based approaches perform worse than Pure-Push, and when thesystem becomes even more heavily loaded, (e.g., at a ThinkTimeR-atio of 100 and higher) Pure-Pull performs worse than both Pure-Push and ��� � . When all other clients are in the warm-up phase,��� ’s performance deteriorates sharply since the server is more li-able to drop requests. Because of the disagreement between theneeds of the ��� and those of the rest of the clients, the ��� paysa high penalty when one of its requests gets dropped, because theother clients have a lower probability of accessing the same page.Even when SteadyStatePerc = 95%, the performance of Pure-Pulldeteriorates quite rapidly as the server queue fills. The ��� � ap-proach, which in this case, dedicates half of the broadcast band-width to pushing pages, has worse performance than Pure-Pull atlow to moderate contention rates, but levels out to a better responsetime than Pure-Pull when the contention at the server is high. Atlower loads, the pushed pages occupy broadcast slots that couldbetter be used to service pull requests, while at higher loads, theylimit how long a client will have to wait for a page, even if its re-quest is dropped by the server.

In effect, while push has a poorer response time than pull atlower loads, it provides an upper bound on the latency for any page,i.e., a “safety-net”, when the server congestion causes pull requeststo be dropped. This is the fundamental tradeoff between push andpull in the Broadcast Disk environment.

This experiment, thus, demonstrates that in steady state if thesystem is always underutilized, Pure-Pull is the algorithm of choiceand if the system is saturated, the server should disseminate viaPure-Push. However, the use of either of the two algorithms in asystem with widely varying loads can lead to very erratic perfor-mance. The goal of this study is to develop strategies which pro-vide consistently good response times over a wide range of systemloads. The ��� � algorithm is one such technique and as Figure 3,This result holds only to the extent that clients have similar access patterns. The

impact of differing access patterns is addressed in Section 4.1.4.- � �.� with SteadyStatePerc = 0% performs somewhat worse than the others atthis point. Since half of the broadcast bandwidth is dedicated to push, much of theremaining bandwidth is consumed by non-steady-state clients pulling pages that the/10

already has cached.

6

Page 179: Mobile Computing Unit 1 , 2

0

100

200

300

400

500

600

700

800

10 25 50 100 250

Res

pons

e T

ime

(Bro

adca

st U

nits

)

Think Time Ratio

PushPull 0%

95%IPP 0%

95%

0

100

200

300

400

500

600

10 25 50 100 250

Res

pons

e T

ime

(Bro

adca

st U

nits

)

Think Time Ratio

PushPull

IPP PullBW 50%30%10%

(a) ��� � PullBW=50%, SteadyStatePerc Varied (b) ��� � PullBW Varied, SteadyStatePerc=95%Figure 3: Steady State Client Performance

shows, while there are workloads for which Pure-Pull and Pure-Push do better, the performance of ��� � is more uniform over theentire space. In the rest of this section and the next two experi-ments, we will study three parameters that influence ��� � ’s perfor-mance — pull bandwidth, threshold (as determined by ThresPerc)and the size of the push schedule. These sensitivity results high-light the system tradeoffs and provide input to fine-tune ��� � forconsistent performance across a broad spectrum of server loads.

��� � + � " ���� � ��� � ���� � � �� ��� ���In the preceding graph, one factor driving the relative performanceof the ��� � approach compared to the two “pure” approaches wasthe PullBW, that is, the maximum percentage of the bandwidth al-located for servicing pull requests. In theory, this parameter al-lows ��� � to vary between the performance of Pure-Push (PullBW= 0%) and Pure-Pull (PullBW = 100%). Figure 3(b) shows thesteady-state performance of the ��� � approach (with SteadyState-Perc = 95%) for three values of PullBW: 10, 30, and 50% (i.e. thesame case as in Figure 3(a)). The curves for Pure-Push and Pure-Pull are also shown for reference.

As expected, the performance of ��� � tends towards that ofPure-Pull as the bandwidth dedicated to pulled pages is increased.As such, it performs well at lower loads and poorly at higherloads, tending towards the S-curve shape characteristic of Pure-Pull. Likewise, with less bandwidth dedicated to pulled pages, theperformance of ��� � flattens out, similarly to Pure-Push. It is in-teresting to note, however, that with PullBW = 10%, ��� � performsslightly worse than Pure-Push even at low system loads. The rea-son for this behavior is the following: In this case, 10% of the band-width is taken away from the pushed pages, resulting in a slowdownin the arrival of those pages (i.e., the Broadcast Disk takes longerto rotate). The small amount of bandwidth that is freed up for pullis insufficient to handle the volume of pull requests, even for smallclient populations. For example, at ThinkTimeRatio = 10, 58% ofthe pull requests are dropped by the server. These dropped requestsare likely to be ultimately satisfied by the pushed pages, whose ar-rival rates have been slowed down by 10%.

��� � � � �� " ��� � � #� � ��� "1 � �

In the first part of this experiment, we investigated the steady-stateperformance of the ��� under the various approaches. In this sec-tion we address the impact of the three approaches on how long ittakes a client that joins the system with an empty cache to warm-up its cache. This metric is particularly important for applications

in which clients are not expected to monitor the broadcast contin-uously. For example, in an Advanced Traveler Information Sys-tem [Shek96], motorists join the “system” when they drive withinrange of the information broadcast.

Figure 3(a) showed that when the ��� is in steady-state, it per-forms better for both pull-based approaches when most of the otherclients are in steady-state as well. Figures 4(a) and 4(b) show thetime it takes for the ��� ’s cache to warm up for ThinkTimeRa-tio 25 and 250, respectively, for the same settings shown in Fig-ure 3(a) (i.e., PullBW = 50%). Along the x-axis, we have the per-centage of the CacheSize highest valued pages that are in the cache;as the client warms up, this number approaches 100%. Recallthat ThinkTimeRatio=25 represents a lightly loaded system whileThinkTimeRatio=250 corresponds to a heavily loaded system. Ascan be seen in Figure 4(a), under low-moderate loads, Pure-Pullallows the fastest warm up, with the other approaches doing sig-nificantly worse. For the higher load case shown in Figure 4(b),however, the approaches invert, with Pure-Push showing the bestwarm up performance because the push system delivers data itemsfaster since client requests are dropped due to server saturation. Asseen previously, under a heavy load, the ��� ’s performance for thepull-based approaches is better when the other clients are in a simi-lar state (i.e., warming up, in this case). Note that for the remainderof this paper, all performance results are shown for the steady-statecase (i.e., SteadyStatePerc=95%).

� ��� � " ���� �.� � �/� � 2��� � ����� �� � � � � ��� � � 2��� � � ����� � ����

Both the steady-state and warm-up results showed the negative ef-fect on performance that arises when a client’s data access patterndiffers significantly from the aggregate access pattern of the otherclients in the system. In particular, the results showed that Pure-Pull was particularly sensitive to such disagreement when the sys-tem was heavily loaded. In this section, we examine this issue fur-ther, using the Noise parameter described in Section 3. Recall thatin this study, Noise specifies the degree to which the ��� ’s accesspattern is permuted with respect to the access pattern of the ���(whose access pattern is used to generate the broadcast program).A higher Noise value indicates a higher level of disagreement be-tween ��� and the ��� . Although we report performance resultsonly for the ��� , these results are indicative of what any of theclients would experience if they differed from the average accesspatterns of the other clients.

Figures 5(a) and 5(b) show the performance of Pure-Pull and��� � respectively, for three different values of Noise. Both figuresalso show the performance of Pure-Push for those Noise values.

7

Page 180: Mobile Computing Unit 1 , 2

0

50000

100000

150000

200000

250000

300000

350000

10 20 30 40 50 60 70 80 90 95

Tim

e (B

road

cast

Uni

ts)

Cache Warm Up%

PushPull 0%

95%IPP 0%

95%

0

100000

200000

300000

400000

500000

600000

700000

800000

10 20 30 40 50 60 70 80 90 95

Tim

e (B

road

cast

Uni

ts)

Cache Warm Up%

PushPull 0%

95%IPP 0%

95%

(a) ThinkTimeRatio =25 (b) ThinkTimeRatio = 250Figure 4: Client Cache Warm Up Time, ��� � PullBW = 50%

0

100

200

300

400

500

600

700

10 25 50 100 250

Res

pons

e T

ime

(Bro

adca

st U

nits

)

Think Time Ratio

Push Noise 0%15%35%

Pull Noise 0%15%35%

0

100

200

300

400

500

600

700

10 25 50 100 250

Res

pons

e T

ime

(Bro

adca

st U

nits

)

Think Time Ratio

Push Noise 0%15%35%

IPP Noise 0%15%35%

(a) Pure-Pull and Pure-Push (b) ��� � and Pure-PushFigure 5: Noise Sensitivity, ��� � PullBW = 50%

Turning to Figure 5(a), it can be seen that at low system loads, Pure-Pull is insensitive to Noise but that at high system loads, Noise hasa substantial negative impact. As long as the server is able to satisfyall of ��� ’s pull requests quickly, its performance is independentof the access patterns of the other clients. When the server becomesloaded and drops ��� requests, however, ��� becomes dependenton the requests of the other clients. With higher Noise values, theother clients are less likely to ask for a page on which ��� mightbe blocked.

In contrast, Figure 5(b) shows that the negative impact of Noisebecomes apparent at a lower ThinkTimeRatio value for ��� � thanfor Pure-Pull (e.g., 25 instead of 50). Here, the server saturatesearlier for ��� � because half of the broadcast bandwidth is dedi-cated to pushed pages. At higher loads, however, ��� � , is muchless sensitive to Noise than Pure-Pull. At higher loads, the pushedpages act as a “safety net”, that bounds the amount of time that aclient will have to wait for a page if one of its requests is dropped bythe server. Also, as Noise increases, ��� � ’s performance degradessince its access pattern deviates from the push program broadcastby the server.

� + � � �����"$ � � + �� ����� � �.� � ��/� � �� � � �� � �� � The previous results demonstrated a fundamental tradeoff of theasymmetric broadcast environment, namely, that under very light

load, pull can provide far more responsive access than push, but thatpull suffers from scalability problems as the load on the system isincreased. Beyond a certain ThinkTimeRatio, Pure-Pull was seen toperform significantly worse than Pure-Push. The ��� � approach isan attempt at a compromise between the two “pure” approaches. Assuch, ��� � was found to perform worse than Pure-Pull under lightto moderate loads, but better than Pure-Pull under heavy loads.��� � pays a price when the load is low to moderate because itdedicates some of the broadcast bandwidth to push. As the serverbecomes saturated with backchannel requests, however, it beginsto drop the client requests, and the pushed data provides a muchneeded safety net that ensures that clients eventually receive theirdata.

��� � loses to Pure-Pull under moderate loads because it sendsthe same number of requests to the server as Pure-Pull, but has lessbandwidth with which to satisfy those requests. Thus, the serverbecomes saturated under ��� � before it becomes saturated underPure-Pull. For example, in the experiment shown in Figure 3(a), ata ThinkTimeRatio of 50, the server drops 68.8% of the pull requestsit receives when ��� � is used, as opposed to only 39.9% of therequests when Pure-Pull is used.

One way to reduce the number of pull requests sent to the serverunder the ��� � approach is to constrain the pages which clientsare allowed to ask to be only those that are “farthest away”. As de-scribed in Section 2.3, we use the notion of threshold to accomplish

8

Page 181: Mobile Computing Unit 1 , 2

0

100

200

300

400

500

600

10 25 35 50 75 100 250

Res

pons

e T

ime

(Bro

adca

st U

nits

)

Think Time Ratio

PushPull

IPP ThresPerc 35%25%10%

0%0

100

200

300

400

500

600

10 25 35 50 75 100 250

Res

pons

e T

ime

(Bro

adca

st U

nits

)

Think Time Ratio

PushPull

IPP ThresPerc 35%25%10%

0%

(a) PullBW = 50% (b) PullBW = 30%Figure 6: Influence of Threshold on Response Time

this. ��� � with a threshold works as follows: On a cache miss,clients check the push program to determine when the missed pageis scheduled to appear next on the broadcast.

If the page is sched-uled to appear within the threshold, then the client must wait forthe page without issuing a pull request. Thresholds are expressedas a percentage of the push period (i.e. the major cycle length ofthe Broadcast Disk).

In the results shown so far, ��� � used a threshold (called Thres-Perc) of 0% — any cache miss would result in a pull request beingsent to the server. In contrast, a ThresPerc of 25% would restrict theclient from sending pull requests for any pages that are scheduledto appear within the next quarter of the push period (i.e., the ma-jor cycle). The threshold, therefore, provides a knob that trades-offexpected delay vs. backchannel usage and server congestion.

The intuition behind threshold is to save the use of thebackchannel for those pages that currently would induce the longestresponse time penalty. Threshold is a simple mechanism for im-proving the usefulness of the backchannel. It can be applied at indi-vidual clients, and requires only that they be aware of the broadcastschedule for the pushed data.

Figure 6(a) shows the performance for various values of Thres-Perc when the PullBW is set at 50% (as in the previous experiment).Also shown for reference are Pure-Push and Pure-Pull. The curvefor a ThresPerc of 0% is identical to that for ��� � in Figure 3(a).With no threshold, ��� � becomes slower than Pure-Push when theThinkTimeRatio exceeds 35. In contrast, with a ThresPerc of 25%,��� � requests only half of its missed pages from the server

andtherefore, it remains better than Pure-Push up to a ThinkTimeRa-tio of 75 — roughly a factor of two improvement in the number ofclients that can be supported.

Under low loads (e.g., ThinkTimeRatio= 10), threshold hurtsperformance by unnecessarily constraining clients — there isplenty of server bandwidth to handle all the requests of the smallclient population. As clients are added however, the threshold be-gins to help performance. In this case, however, it is interesting tonote that a threshold of 35% performs worse than one of 25% up toa ThinkTimeRatio of 50. Prior to that point, the threshold of 25%is sufficient to offload the server (e.g., no requests are dropped) sothe additional threshold simply makes clients wait longer than nec-essary for some pages.

Because the client does not know what the server plans to place in the pull slots,the time-to-next-push is an upper bound on how long the client will wait for the page.

Because of the shape of the multi-disk used to structure the push schedule, ap-proximately half of the pages appear at least once in the first 25% of the broadcastperiod here.

Figure 6(b) shows the performance for the same settings exceptwith the PullBW reduced to 30%. In this case, the reduced band-width available for pull slots causes the server to become saturatedearlier (e.g., for ThresPerc = 25% and ThinkTimeRatio = 25, theserver drops 9.4% of the pull requests). As a result, a ThresPerc of35% provides the best performance for ��� � in all cases here ex-cept under very light load. This also translates to better scalability:��� � crosses Pure-Push at ThinkTimeRatio = 25 with no thresholdbut at ThinkTimeRatio = 75 with a threshold of 35%. This translatesto roughly a factor of three improvement in the number of clientsthat can be supported before losing to Pure-Push.

As the above graphs show, ��� � with different threshold val-ues never beats the best performance of Pure-Pull and Pure-Push.However, as pointed out earlier, the two “pure” algorithms can de-grade in performance rapidly if the system moves out of their nichesystem load range. ��� � , on the other hand, while never havingthe best performance numbers, with an appropriately chosen valueof threshold, can provide reasonably good performance over thecomplete range of system loads.

�� �� �� #���"$ � � � � � 2�������� ��� ��� ���� � �� � � � ��� �

An important issue that has arisen in the preceding experimentsis the impact of the allocation of broadcast bandwidth to pushedpages and to pulled pages. As discussed in Section 4.1.2, one wayto adjust this allocation is to change the PullBW. Up to this point,however, our approach placed all pages on the push schedule. TheBroadcast Disks model provides a flexible way to do this, as itallows the proportion of bandwidth given to particular groups ofitems to be assigned in accordance with their popularity. Changingthe PullBW in the previous experiments, therefore, affected the pe-riod length of the push schedule, but did not impact its contents orthe relative frequencies at which pages appear in the schedule.

An alternative (or actually, complementary) approach to chang-ing the PullBW is to restrict the set of pages that are placed in thepush schedule. That is, rather than pushing the entire database,choose a subset of the pages to push, and allow the rest to be ob-tained by pull only. As is discussed in Section 5, a similar ap-proach was advocated in [Imie94c, Vish94]. Although that workwas based on a somewhat different system model and had a differ-ent objective function, the tradeoffs that arise in both environmentsare similar. In general, as discussed above, placing all items on thepush schedule provides a “safety net”, which bounds the time forwhich a client will have to wait for a data item. Such a bound isparticularly important in our environment, in which the server re-sponds to heavy load by dropping requests. The downside is that

9

Page 182: Mobile Computing Unit 1 , 2

0

200

400

600

800

1000

0 100 200 300 400 500 600 700

Res

pons

e T

ime

(Bro

adca

st U

nits

)

Number of Non-Broadcast Pages

PushPull

IPP PullBW 10%30%50%

0

100

200

300

400

500

600

0 100 200 300 400 500 600 700

Res

pons

e T

ime

(Bro

adca

st U

nits

)

Number of Non-Broadcast Pages

PushPull

IPP PullBW 10%30%50%

(a) ThresPerc = 0% (b) ThresPerc = 35%Figure 7: Restricting Push Contents, ThinkTimeRatio = 25

0

100

200

300

400

500

600

700

10 25 50 100 250

Res

pons

e T

ime

(Bro

adca

st U

nits

)

Think Time Ratio

PushPull

IPP Full DB-200-300-500-700

Figure 8: Server Load Sensitivity for Restricted PushPullBW = 30%, ThresPerc = 35%

placing all items on the push schedule can result in a very longbroadcast cycle and consequently, a significant waste of broadcastbandwidth. Items that are of limited popularity take up broadcastslots that could be used for pushing more popular pages, or forsatisfying more pull requests. The Broadcast Disks paradigm mit-igates this problem to some extent, by providing the flexibility toplace unpopular pages on slowly spinning “disks”. The fact re-mains, however, that pushing pages onto the broadcast is wastefulif those pages are unlikely to be accessed.

Figure 7 shows the performance of the ��� � approach for twodifferent values of ThresPerc and varying PullBW settings as pagesare incrementally truncated from the push schedule. The push pro-gram is made smaller by first chopping pages from the third (slow-est) disk until it is completely eliminated and then dropping pagesfrom the second (intermediate) disk. Figures 7(a) and 7(b) showthe case when ��� � does not use a threshold (ThresPerc = 0%) andwhen using a ThresPerc of 35% respectively for a lightly loaded(ThinkTimeRatio = 25) system. At the left of the x-axis, the pushschedule is fully intact, while at the far right, the third disk is re-moved and 200 pages are dropped from the second disk. Recall thatthe third disk has a size of 500 pages. The main point that thesefigures show is that if pages are to be removed from the broadcast,then adequate pull bandwidth must be provided to allow clients toobtain those pages.

The performance of Pure-Pull and Pure-Push are independent

of the number of pages not on the push schedule and thus, arestraight lines with response times of 2 and 278 units respectively.

In all the following figures, since the response time of ��� � forPullBW=10% rises dramatically, the y-axis is clipped to keep thegraphs in scale. In Figure 7(a), the clients request every miss for��� � since there is no threshold. The client miss rate increases asmore pages are dropped from the push schedule, causing the serverto saturate and start ignoring requests. Consequently, the responsetime can degrade rapidly if the pull bandwidth does not keep upwith the demand (e.g., PullBW=10%). Note that unlike the casein which the whole database is broadcast, there is no upper boundon the latency of a page not on the push schedule. PullBW=50%does somewhat better than Pure-Push until the entire third disk isdropped (500 pages).

Figure 7(b) shows the performance for the same simulation set-tings as Figure 7(a), except that ThresPerc is set to 35%. Sinceclients filter some of their requests due to threshold, the server is notas heavily loaded as before and this shows in the much slower per-formance degradation for PullBW of 10%. Both the other PullBWalgorithms outperform Pure-Push here since the system is lightlyloaded. Consequently, dropping more pages can significantly im-prove performance (up to a point) since there is sufficient pull band-width to satisfy requests. For example, for PullBW of 50%, the re-sponse time numbers are 155 and 63 broadcast units at the left andright end of the graph respectively. However, beyond 500 droppedpages, PullBW=30% starts to degrade. This is because the 30%bandwidth for pull requests is no longer sufficient to handle the ad-ditional misses from the second disk pages which are no longer onthe push schedule.

Note that the penalty incurred by ��� � for dropping a requestfor a page not on the broadcast schedule is not only much higherthan for Pure-Push (due to the absence of the “safety net”) but alsomuch higher than Pure-Pull since the push schedule uses a portionof the bandwidth. Thus, unlike in Experiments 1 and 2, the re-sponse time is not bounded in the worst case by Pure-Pull. Thisis seen in Figure 8 which shows the simulation space from a view-point similar to the earlier experiments with the server load (as de-termined by ThinkTimeRatio) on the x-axis and the client responsetime on the y-axis. The graph shown is for a PullBW of 30% andThresPerc of 35% and the legend for ��� � represents the size ofpages chopped from the push schedule. As is seen, when 700 pagesare dropped, ��� � does worse than Pure-Pull all through the rangeof the x-axis. The lesson from the graphs in Figure 7 of the need foradequate pull bandwidth to respond to client requests for non-push

The line for Pure-Pull is not visible in Figures 7(a) and 7(b) because of overlapwith the x-axis.

10

Page 183: Mobile Computing Unit 1 , 2

schedule pages is again apparent here in the crossover among the��� � lines between ThinkTimeRatio of 25 and 50. If the systemis underutilized, chopping more pages makes sense since there isenough pull bandwidth to serve client requests. Once the systemsaturates (beyond ThinkTimeRatio of 25), the performance hit dueto dropped requests and the “safety net” of the push schedule causethe order of the ��� � algorithms to invert on the right-hand side ofthe graph from the ordering on the lightly loaded left-hand side.

As in the previous two experiments, while a restricted pushschedule cannot be expected to beat the best performance num-bers of Pure-Push and Pure-Pull, the above results show that the��� � algorithm with an appropriately chosen subset to be broad-cast (along with proper values of threshold and pull bandwidth),can provide consistently good performance over the entire range ofserver load.

� � � "-"1��0 � � � � ��� ���We have seen that when there is little or no contention at the server,pulling pages using the backchannel with no server push (Pure-Pull) is the best strategy. If the server is lightly loaded, all requestsget queued and are serviced much faster than the average latencyof pages on the Broadcast Disk. At the other extreme (typically atthe right-hand side of the response time graphs), the server is sat-urated and the probability of a backchannel request being droppedis extremely high. Consequently, in this region, the best strategy isto use Pure-Push since it provides a “safety net” and puts an up-per bound on the delay for any page. The asymmetry is extremeenough to make Pure-Pull ineffective justifying the intuition thatpush-based techniques are best suited for highly asymmetric set-tings.

Use of either of the two “pure” algorithms in a system withwidely varying loads can lead to significant degradation of per-formance since they fail to scale once the load moves away fromtheir niche domain. Consequently, we introduced the ��� � algo-rithm, a merge between the two extremes of Pure-Pull and Pure-Push to provide reasonably consistent performance over the entirespectrum of system load. Since ��� � suffers the same bottleneckproblems of any pull based approach, we studied three techniquesto improve its scalability and performance by minimizing the timespent in saturation.

The first approach is to adjust the pull bandwidth. Increasing itmight move the server away from saturation since the rate at whichthe queue is serviced also increases. However, the downside of in-creasing pull bandwidth is the reduction in the push bandwidth,slowing the broadcast delivery and introducing a fundamentaltradeoff. The limiting cases of this are Pure-Pull (PullBW=100%)and Pure-Push (PullBW=0%). An interesting observation aboutpull bandwidth is that while lower values of PullBW (e.g., 30%) donot produce the best results when the system is lightly loaded, nei-ther do they produce the worst results when the system is heavilyloaded and thus, are suited for systems with dynamic loads.

Another way to achieve the goal of delaying saturation is theuse of a threshold. Instead of flooding the server with every possi-ble miss, clients use discretion by only requesting their most “ex-pensive” ones. This has the effect of delaying the point at whichthe server queue saturates.

The final technique that we described for avoiding saturation isone in which successively larger pieces are chopped off the slowestpart of the broadcast schedule to increase the available bandwidthfor pull. Since PullBW essentially predetermines the split betweenpull and push bandwidth allocations, we must increase PullBW inorder to realize a benefit from this approach. This technique hasthe disadvantage that if there is not enough bandwidth dedicated topulled pages, performance can degrade severely since clients will

not be able to pull non-broadcast pages and there is no upper-boundon the latency for those pages provided by the push. Using a thresh-old with the “chopped disk” can help considerably since all non-broadcast pages pass the threshold filter and the effect is to reservemore of the backchannel capability for those pages.

We also studied the effect of differences in access patterns instudies of warm-up times and noise. For warm-up, in a lightlyloaded system, Pure-Pull warms up fastest, while in a heavilyloaded system, Pure-Push does best. In general, a client will warmup quicker if other clients are in a similar state. Disagreement in ac-cess patterns is represented by Noise. We showed that for a lightlyloaded system, Noise has little impact since clients can pull whatthey need; however, for a heavily loaded system, Noise has a largenegative impact. ��� � saturates earlier, but is overall less sensitiveto noise because of the “safety net” effect of the scheduled broad-cast.

� � �� ��� � � ��� �

The basic idea of managing broadcast data has been investigatedby a number of projects [Amma85, Herm87, Giff90, Bowe92,Imie94a, Imie94b]. Our work on Broadcast Disks differs fromthese in that we consider multi-level disks and their relationshipto cache management. In [Acha95a], we proposed an algorithm togenerate Broadcast Disk programs and demonstrated the need forcost-based caching in this environment. In [Acha96a], we showedhow opportunistic prefetching by the client can significantly im-prove performance over demand-driven caching. More recently, in[Acha96b], we studied the influence of volatile data on the clientperformance and showed that the Broadcast Disk environment isvery robust in the presence of updates.

The Datacycle Project [Bowe92, Herm87] at Bellcore inves-tigated the notion of using a repetitive broadcast medium fordatabase storage and query processing. An early effort in infor-mation broadcasting, the Boston Community Information System(BCIS) is described in [Giff90]. BCIS broadcast news articlesand information over an FM channel to clients with personal com-puters specially equipped with radio receivers. Both Datacycleand BCIS used a flat disk approach. The mobility group at Rut-gers [Imie94a, Imie94b] has done significant work on data broad-casting in mobile environments. A main focus of their work hasbeen to investigate novel ways of indexing in order to reduce powerconsumption at the mobile clients. Some recent applications ofdissemination-based systems include information dissemination onthe Internet [Yan95, Best96], Advanced Traveler Information Sys-tems [Shek96] and dissemination using satellite networks [Dao96].

Work by Imielinski and Viswanathan [Imie94c, Vish94] is moreclosely related to the results we report here, in terms of studyingthe trade-offs between pull and push in a broadcast environment.They list a number of possible intermediate data delivery optionsbetween the two extremes of pure-pull and pure-push. They pro-pose an algorithm to split the database into a “publication” groupand an “on-demand” group in order to minimize the number of up-link requests while constraining the response time to be below apredefined upper limit. Though similar in spirit to Experiment 3(Section 4.3), the goal of our work is different in that we try to findthe best response time for the client, while budgeting the use of thebackchannel. However, the biggest difference is in the model ofthe server. They use an M/M/1 queuing model for the backchan-nel which when unstable, allows a queue of infinite length. Ourenvironment is not accurately captured by an M/M/1 queue. Re-quests and service times are not memoryless, due to caching andthe interleaving of push and pull slots dictated by PullBW. Also,the server in our model uses a bounded queue, which drops re-quests if it becomes full. Another key difference between the mod-els is that in our environment, any page can be pulled through

11

Page 184: Mobile Computing Unit 1 , 2

the backchannel as long as its delay is greater than the threshold.In [Imie94c, Vish94], only pages in the “on-demand” group canbe requested over the back channel. They also assume an implicitsymmetric model where both the back and the front channel share acommon medium. Thus, while there is a correlation between theirresults and ours when their model is stable (corresponding to a lowThinkTimeRatio in this work), in general, those results are not di-rectly applicable here.

There has also been work on broadcasting in Teletex systems[Amma85, Wong88]. [Wong88] presents an overview of some ofthe analytical studies on one-way, two-way and hybrid broadcastin this framework. However, as in [Imie94c, Vish94], their servermodels are significantly different from ours.

��, � � � �����!��� � �

In this paper, we addressed the problem of adding a backchannel toa broadcast-based environment. We showed that in highly asym-metric cases, the server can become a bottleneck and using thebackchannel to simply pull all misses is not a good strategy. Weshowed how a few simple techniques can be used to improve thissituation. In particular, we demonstrated how using a threshold,adjusting the pull bandwidth, and reducing the size of the sched-uled push program can all contribute to improved performance andscalability over a wide range of workloads.

We believe that this paper carefully delineates the issues and thetradeoffs that one must confront in this type of environment. Wealso believe that we have developed a realistic simulation modelthat was used to advantage in this study and can be used in futurestudies. This model is based on a finite server queue and a fixedservice time (as reflected in PullBW). It allows us to mix push andpull in various ways to study their relative merits. The model alsosupports the incorporation of client caching.

Beyond what was presented, we would like to develop tools tomake the parameter setting decisions for real dissemination-basedinformation systems easier. These tools could be analytic or theycould be a better interface on our simulator. To this end, we wouldbe interested in adapting the analytical framework presented in[Imie94c, Wong88] to develop solutions for our model. We alsosee the utility in developing more dynamic algorithms that can ad-just to changes in the system load. For example, as the contentionon the server increases, a dynamic algorithm might automaticallyreduce the pull bandwidth at the server and also use a larger thresh-old at the client. We are also in the process of implementing aBroadcast Disk facility that will include support for a backchannel.This will allow us and others to easily implement real applicationsand further test our current results.

Finally, as stated in [Fran96], the periodic push approach ofBroadcast Disks and the pull-based approach of request-responseare just two of many ways for delivering data to clients. We seethe integration of these two techniques as described in this paperas a first step towards the development of the more general notionof a dissemination-based information system (DBIS). A DBIS isa distributed information system in which it is possible to freelymix data delivery options. For example, the nodes in a DBIScould communicate using periodic push, request-response, pub-lish/subscribe [Oki93, Yan95, Glan96], and other techniques in var-ious combinations.

An integrated DBIS consists of data sources, consumers (i.e.,clients), and information brokers. These brokers acquire informa-tion from sources, add value to that information (e.g,. some addi-tional computation or organizational structure) and then distributethis information to other brokers or clients. By creating hierar-chies of brokers, information delivery can be tailored to the needsof many different users. Our long-term goal is to develop tools thatwould allow the different data delivery mechanisms to be mixed

and matched, so that the most appropriate mechanism can be usedfor each type of data flow in the system.

�/�/� � �� � � � "$ � ���

The authors would like to thank Rafael Alonso for his ideas duringthe early phases of this work.

� � ��� � � �[Acha95a] S. Acharya, R. Alonso, M. Franklin, S. Zdonik, “Broadcast

Disks: Data Management for Asymmetric Communication Environ-ments”, Proc. ACM SIGMOD Conf., San Jose, CA, May, 1995.

[Acha95b] S. Acharya, M. Franklin, S. Zdonik, “Dissemination-basedData Delivery Using Broadcast Disks”, IEEE Personal Communications,2(6), December, 1995.

[Acha96a] S. Acharya, M. Franklin, S. Zdonik, “Prefetching from a Broad-cast Disk”, 12th International Conference on Data Engineering, NewOrleans, LA, February, 1996.

[Acha96b] S. Acharya, M. Franklin, S. Zdonik, “Disseminating Updateson Broadcast Disks”, Proc. ������� VLDB Conf., Bombay, India, Septem-ber, 1996.

[Amma85] M. Ammar, J. Wong, “The Design of Teletext Broadcast Cy-cles”, Perf. Evaluation, 5 (1985).

[Best96] A. Bestavros, C. Cunha, “Server-initiated Document Dissemina-tion for the WWW”, IEEE Data Engineering Bulletin, 19(3), September,1996.

[Bowe92] T. Bowen, G. Gopal, G. Herman, T. Hickey, K. Lee, W. Mans-field, J. Raitz, A. Weinrib, “The Datacycle Architecture”, CACM,35(12), December, 1992.

[Dao96] S. Dao, B. Perry, “Information Dissemination in Hybrid Satel-lite/Terrestrial Networks”, IEEE Data Engineering Bulletin, 19(3),September, 1996.

[Dire96] Hughes Network Systems, DirecPC Home Page,http://www.direcpc.com/, Oct, 1996.

[Erik94] H. Erikson,“MBONE: The Multicast Backbone”, CACM, 37(8),August, 1994.

[Fran96] M. Franklin, S. Zdonik, “Dissemination-Based Information Sys-tems”, IEEE Data Engineering Bulletin, 19(3), September, 1996.

[Giff90] D. Gifford, “Polychannel Systems for Mass Digital Communica-tion”, CACM, 33(2), February, 1990.

[Glan96] D. Glance, “Multicast Support for Data Dissemination in Or-bixTalk”, IEEE Data Engineering Bulletin, 19(3), September, 1996.

[Herm87] G. Herman, G. Gopal, K. Lee, A. Weinrib, “The Datacycle Ar-chitecture for Very High Throughput Database Systems”, Proc. ACMSIGMOD Conf., San Francisco, CA, May, 1987.

[Imie94a] T. Imielinski, B. Badrinath, “Mobile Wireless Computing: Chal-lenges in Data Management”, CACM, 37(10), October, 1994.

[Imie94b] T. Imielinski, S. Viswanathan, B. Badrinath, “Energy EfficientIndexing on Air”, Proc. ACM SIGMOD Conf., Minneapolis, MN, May,1994.

[Imie94c] T. Imielinski, S. Viswanathan, “Adaptive Wireless InformationSystems”, Proc. of SIGDBS Conf., Tokyo, October, 1994.

[Knut81] D. Knuth, The Art of Computer Programming, Vol II, AddisonWesley, 1981.

[Oki93] B. Oki, M. Pfluegl, A. Siegel, D. Skeen, “The Information Bus -An Architecture for Extensible Distributed Systems”, Proc. 14th SOSP,Ashville, NC, December, 1993.

[Schw86] H. D. Schwetman, “CSIM: A C-based process oriented simula-tion language”, Proc. 1986 Winter Simulation Conf., 1986.

[Shek96] S. Shekhar, A. Fetterer, D. Liu, “Genesis: An Approach to DataDissemination in Advanced Traveller Information Systems”, IEEE DataEngineering Bulletin, 19(3), September, 1996.

[Wong88] J. Wong, “Broadcast Delivery”, Proceedings of the IEEE,76(12), December, 1988.

[Vish94] S. Viswanathan, “Publishing in Wireless and Wireline Environ-ments”, Ph.D Thesis, Rutgers Univ. Tech. Report, November, 1994.

[Yan95] T. Yan, H. Garcia-Molina, “SIFT – A Tool for Wide-area Informa-tion Dissemination”, Proc. 1995 USENIX Technical Conference, 1995.

[Zdon94] S. Zdonik, M. Franklin, R. Alonso, S. Acharya, “Are ’Disks inthe Air’ Just Pie in the Sky?”, IEEE Workshop on Mobile ComputingSystems and Applications, Santa Cruz, CA, December, 1994.

12

Page 185: Mobile Computing Unit 1 , 2

Abstract—Cellular networks provide voice and data services to

the users with mobility. To deliver services to the mobile users, the cellular network is capable of tracking the locations of the users, and allowing user movement during the conversations. These capabilities are achieved by the location management. Location management in mobile communication systems is concerned with those network functions necessary to allow the users to be reached wherever they are in the network coverage area. In a cellular network, a service coverage area is divided into smaller areas of hexagonal shape, referred to as cells. The cellular concept was introduced to reuse the radio frequency. Continued expansion of cellular networks, coupled with an increasingly restricted mobile spectrum, has established the reduction of communication overhead as a highly important issue. Much of this traffic is used in determining the precise location of individual users when relaying calls, with the field of location management aiming to reduce this overhead through prediction of user location. This paper describes and compares various location management schemes in the cellular networks.

Keywords—Cellular Networks, Location Area, Mobility Management, Paging.

I. INTRODUCTION N the past decade, cellular communications have experienced an explosive growth due to recent

technological advances in cellular networks and cellular phone manufacturing. It is anticipated that they will experience even more growth in the next decade. In order to accommodate more subscribers, the size of cells must be reduced to make more efficient use of the limited frequency spectrum allocation. A cellular communication system must track the location of its users in order to forward calls to the relevant cell within a network. This will add to the challenge of some fundamental issues in cellular networks. Location management is one of the fundamental issues in cellular networks. It deals with how to track subscribers on the move. The purpose of this paper is to survey recent research on location management in cellular networks. The study of location management aims to reduce the overhead required in locating mobile devices in a cellular network. The paper is organized as follows: The next section will briefly describe some fundamental concepts about cellular networks and location management. The section 3 will address recent researches on location management schemes. Finally the paper is concluded by summarizing the main points.

Manuscript received November 30, 2006. Authors are with Department of Computer Science & Engineering, Guru

Nanak Dev University, Amritsar, India (e-mails: [email protected], [email protected]).

II. CELLULAR NETWORKS In a cellular network, a service coverage area is divided into

smaller areas of hexagonal shape, referred to as cells. Each cell is served by a base station. The base station is fixed. It is able to communicate with mobile stations such as cellular phones using its radio transceiver. The base station is connected to the mobile switching center (MSC), which is, in turn, connected to the public switched telephone network (PSTN). Fig. 1 illustrates a typical cellular network. (A base station is marked with a triangle.)

Fig. 1 A typical cellular network

The frequency spectrum allocated to wireless

communications is very limited. The cellular concept has been introduced to reuse the frequency. Each cell is assigned a certain number of channels. To avoid radio interference, the channels assigned to one cell must be different from the channels assigned to its neighboring cells. However, the same channels can be reused by two cells, which are far apart such that the radio interference between them is tolerable. By reducing the size of cells, the cellular network is able to increase its capacity, and therefore to serve more subscribers.

For the channels assigned to a cell, some are forward (or downlink) channels which are used to carry traffic from the base station to mobile stations, and the other are reverse (or uplink) channels which are used to carry traffic from mobile stations to the base station. Both forward and reverse channels are further divided into control and voice (or data) channels. The voice channels are for actual conversations while the control channels are used to help set up conversations.

A mobile station communicates with another station, either mobile or land, via a base station. A mobile station cannot communicate with another mobile station directly. To make a call from a mobile station, the mobile station first needs to make a request using a reverse control channel of the current cell. If the request is granted by MSC, a pair of voice channels will be assigned for the call. To route a call to a mobile station is more complicated. The network first needs to know the MSC and the cell in which the mobile station is currently located. How to find out the current residing cell of a mobile station is an issue of location management. Once the MSC

Location Management in Cellular Networks Bhavneet Sidhu, and Hardeep Singh

I

PROCEEDINGS OF WORLD ACADEMY OF SCIENCE, ENGINEERING AND TECHNOLOGY VOLUME 21 JANUARY 2007 ISSN 1307-6884

PWASET VOLUME 21 JANUARY 2007 ISSN 1307-6884 314 © 2007 WASET.ORG

Page 186: Mobile Computing Unit 1 , 2

knows the cell of the mobile station, the MSC can assign a pair of voice channels in that cell for the call. If a call is in progress when the mobile station moves into a neighboring cell, the mobile station needs to get a new pair of voice channels in the neighboring cell from the MSC so the call can continue. This process is called handoff (or handover). The MSC usually adopts a channel assignment strategy, which prioritize handoff calls over new calls.

III. LOCATION MANAGEMENT SCHEMES The continued growth of wireless communication systems,

and expansion of network subscription rates, signals increased demand for the efficient location management. A cellular communication system must track the location of its users in order to forward calls to the relevant cell within a network. Cells within a network are grouped into Location Areas (LAs).

Users are free to move with a given location area without updating their location, informing the network only when transitioning to a new LA. If a call is to be forwarded to a user, the network must now page every cell within the location area to determine their precise location. Network cost is incurred on location updates and paging, the balance of these defining the field of Location Management (LM). So there are two basic operations involved with location management: • Location Updating: Informing the network of a devices

location. • Paging: Polling a group of cells to determine the precise

location of a device [3]. The frequency of updates and paging messages relates

closely to user movement and call arrival rates, along with network characteristics such as cell size. As mobile devices move between cells in a network they must register their new location to allow the correct forwarding of data. Continual location updates can be a very expensive operation, particularly for users with comparatively low call arrival rates. This update overhead not only puts load on the core (wired) network but also reduces available bandwidth in the mobile spectrum. Importantly, unnecessary location updating incurs heavy costs in power consumption for the mobile device. The study of location management aims to reduce the overhead required in locating mobile devices in a cellular network.

An additional area of consideration in location management is the mobility model used to estimate user movement in the network, aiding in the optimization of location updating and paging schemes.

A. Location Update A location update is used to inform the network of a mobile

device’s location. This requires the device to register its new location with the current base station, to allow the forwarding of incoming calls. Each location update is a costly exercise, involving the use of cellular network bandwidth and core network communication; including the modification of

location databases. A wide variety of schemes have hence been proposed to reduce the number of location update messages required by a device in a cellular network. Location update schemes are often partitioned into the categories of static and dynamic [3].

A location update scheme is static if there is a predetermined set of cells at which location updates must be generated by a mobile station regardless of it mobility. A scheme is dynamic if a location update can be generated by a mobile station in any cell depending on its mobility. Static schemes offer a lower level of cost reduction but reduced computational complexity. Dynamic schemes adjust location update frequency per user and are hence able to achieve better results, while requiring a higher degree of computational overhead.

1) Static Location Update Schemes Static schemes define the frequency and occurrence of

location updates independently from any user characteristics. Such static mechanisms allow efficient implementation and low computational requirements due to the lack of independent user tracking and parameterization. The various static location update schemes are discussed below:

a) Always-Update vs. Never-Update The always-update strategy is the simplest location update

scheme; performing a location update whenever the user moves into a new cell. The network always has complete knowledge of the user’s location and requires no paging to locate the user when an incoming call arrives. The always-update scheme performs well for users with a low mobility rate or high call arrival rate. It performs quite poorly for users with high mobility however, requiring many location updates and excessive use of resources. While not used in practice, this scheme forms the basis of many more complex location management mechanisms, such as location area [12] and profile-based update [10].

The never-update scheme is the logical counterpart to always-update, never requiring the mobile device to update its location with the network. This entails no location update overhead but may result in excessive paging for a large network or for high call arrival rates. These two strategies represent the extremes of location management - always-update minimizing paging cost with never-update minimizing location update cost.

b) Location Areas The location area topology is widely used to control the

frequency of location updates, both in the current GSM [14] and IS-41 [6] telecommunications architectures. Here the network is partitioned via the amalgamation of groups of cells into larger meta-cells, or location areas. The scheme then functions very similarly to the always-update mechanism – mobile devices only update their location when leaving their current location area [12]. This partitioning is shown in Fig. 2, with four separate location areas.

PROCEEDINGS OF WORLD ACADEMY OF SCIENCE, ENGINEERING AND TECHNOLOGY VOLUME 21 JANUARY 2007 ISSN 1307-6884

PWASET VOLUME 21 JANUARY 2007 ISSN 1307-6884 315 © 2007 WASET.ORG

Page 187: Mobile Computing Unit 1 , 2

Fig. 2 Network partitioned into location areas

If the network knows the users current location area, the

paging required to locate a user is confined to the meta-cell within which the user resides. The location update process may be instigated periodically or, more commonly, on location area boundary crossings. The periodic location-updating scheme is the simplest to implement, merely requiring the mobile device to send a location update message containing its current location area at regular time intervals. The methodology used here captures none of the details of user movement however, and enforces an update frequency that may be highly unsuitable given the users current rate of movement. It also offers no guarantees that the network will have knowledge of the exact location area the user resides in, requiring sophisticated paging across multiple location areas. The boundary crossing method is more precise; updating the user location only when crossing to another location area. This method has its own inherent weaknesses however, particularly when a user makes multiple crossings across a location area boundary [5].

Fig. 3 Cell ping-pong effect

The ping-ponging effect, illustrated in Figures 3(a) and

3(b), is the major weakness of location area schemes. Here a user moves repeatedly between the boundaries of two or more location areas, inducing a high location update rate with comparatively low physical mobility.

A number of schemes have been proposed to address this problem,, such as the Two Location Area (TLA) [10] and Three Location Area (TrLA) [5] mechanisms. These assign multiple location areas to a mobile device, requiring location update only when one of the respective two or three location areas has been exited.

2) Dynamic Location Update Schemes Dynamic location update schemes allow per-user

parameterization of the location update frequency. These account for the dynamic behavior of users and may result in lower location management costs than static schemes. Unlike

static location management strategies, a location update may be performed from any cell in the network, taking into consideration the call arrival and mobility patterns of the user.

a) Threshold-Based In threshold-based schemes each mobile device maintains a

particular parameter, updating its location when the parameter increases beyond a certain threshold. The update threshold may be optimized on a per-user basis, dependent on a user’s call-arrival and mobility rate [1]. The most common thresholding schemes are time-based, movement-based and distance-based; evaluated in [3].

Time-Based Update: The time-based strategy requires that users update their location at constant time intervals. This time interval may then be optimized per-user, to minimize the number of redundant update messages sent. This only requires the mobile device to maintain a simple timer, allowing efficient implementation and low computational overhead. Fig 4 illustrates this scheme, with the updates (U1, U2 and U3) performed at each time interval Δt, regardless of individual movements. It was found in [11] that signalling load may be reduced using a time-based scheme, with the network additionally able to determine if a mobile device is detached if it does not receive an update at the expected time.

Fig. 4 Time-based location update

[13] analyses the performance of the time-based location

update scheme, independent of user mobility constraints, and finds it to outperform the location area method used in current systems. Thus this scheme does however entail a high degree of overhead in a number of situations, such as when a user has only moved a very small distance or has not moved at all.

Movement-Based Update: This scheme requires mobile devices to update their location after a given number of boundary-crossings to other cells in the network. This boundary-crossing threshold may be assigned per-user, optimized for individual movement and call arrival rates [1].

Fig. 5 Movement-Based location update

PROCEEDINGS OF WORLD ACADEMY OF SCIENCE, ENGINEERING AND TECHNOLOGY VOLUME 21 JANUARY 2007 ISSN 1307-6884

PWASET VOLUME 21 JANUARY 2007 ISSN 1307-6884 316 © 2007 WASET.ORG

Page 188: Mobile Computing Unit 1 , 2

Fig. 5 shows a movement-based scheme, with a movement threshold of two. Here the device updates its location every two crossings between cells. The required paging area is restricted to a neighborhood of radius equal to the distance threshold around the last updated location. The paging area requirement is reduced through this scheme, although unnecessary updates may still be performed as a result of repeated crossings over the same cell boundary. [3] finds the movement-based scheme to perform better than the time-based scheme under a memory-less (random) movement model. Under Markovian analysis, the time-based scheme is found to perform better for special cases of extremely low update rates, with the movement-based scheme performing slightly better for the majority of user classes.

Distance-Based Update: In a distance-based scheme the mobile device performs a location update when it has moved a certain distance from the cell where it last updated its location. Again, this distance threshold may be optimized per-user according to movement and call arrival rates.

Fig. 6 Distance-based location update

A distance-based update system is shown in Fig. 6. Here the

location is only updated when the user travels beyond a certain radii from the previous update location. This scheme has the benefit of not requiring an update when a user repeatedly moves between a small subset of cells, provided these cells reside within the distance-threshold radius. [3] find the distance-based scheme to significantly outperform the time- and movement-based schemes under both simulation and theoretical analysis.

Distance-based update strategies are quite difficult to implement in a real-world network [7]. Each mobile node is required to track its location and determine the distance from the previously updated cell. This not only requires the device to retain information about its starting position, but also to possess some concept of a coordinate system, allowing the calculation of distance between the two points. This coordinate system is a non-trivial requirement in a heterogeneous network, where cell adjacencies and distances may not be clearly defined.

b) Profile-Based Under a profile-based scheme the network maintains a

profile for each user in the network, based on previous movements, containing a list of the most probable cells for the user to reside within [10]. On a location update the network sends this list to the mobile device, forming what may be

considered a complex location area. The mobile device updates its location only when entering a cell not contained in the list. [16] found that when movement exhibits a medium to high predictability, the location management cost is lower than that provided by schemes with a more general representation of location area. When low predictability is encountered, the high overhead of sending a large cell list to users outweighs the cost reduction provided by the profile-based scheme.

B. Paging While mobile devices perform updates according to their

location update scheme, the network needs to be able to precisely determine the current cell location of a user to be able to route an incoming call. This requires the network to send a paging query to all cells where the mobile device may be located, to inform it of the incoming transmission. It is desirable to minimize the size of this paging area, to reduce the cost incurred on the network with each successive paging message [7]. Ideally the paging area will be restricted to a known group of cells, such as with the currently implemented location area scheme [12]. An optimum paging area size calculation involves a trade-off between location update cost and paging cost. This technique is used in many location management schemes to reduce the location management costs incurred. The most commonly used paging schemes are summarized below. These have seen extensive use in real-world telecommunications networks [7].

1) Simultaneous Paging The simultaneous paging scheme, also known as blanket

paging, is the mechanism used in current GSM network implementations. Here all cells in the users’ location area are paged simultaneously, to determine the location of the mobile device. This requires no additional knowledge of user location but may generate excessive amounts of paging traffic. Implementations of simultaneous paging favor networks with large cells and low user population and call rates. This scheme does not scale well to large networks with high numbers of users, necessitating the development of more advanced paging techniques.

2) Sequential Paging Sequential paging avoids paging every cell within a

location area by segmenting it into a number of paging areas, to be polled one-by-one. It is found in [15] that the optimal paging mechanism, in terms of network utilization, is a sequential poll of every cell in the location area individually, in decreasing probability of user residence. The individual delays incurred in this scheme may be unacceptable however, and hence it is suggested that paging areas are formed from a larger number of cells. The number of cells per paging area is a factor which needs to be optimized and may lead to excessive call delays, particularly in large networks. The order by which each area is paged is central to the performance of the sequential paging scheme. [15] suggests several methods

PROCEEDINGS OF WORLD ACADEMY OF SCIENCE, ENGINEERING AND TECHNOLOGY VOLUME 21 JANUARY 2007 ISSN 1307-6884

PWASET VOLUME 21 JANUARY 2007 ISSN 1307-6884 317 © 2007 WASET.ORG

Page 189: Mobile Computing Unit 1 , 2

to determine the ordering of paging areas in a sequential scheme. The simplest ordering constraint is a purely random assignment, where each paging area is polled in a random order. While this reduces the total number of polling messages over a blanket scheme, it is far from optimal. Schemes favoring paging areas located geographically closer to the previously updated location are found to further reduce the total number of paging messages required. These schemes necessitate knowledge of the geographical structure of the network however, and may perform poorly for high movement rates.

3) Intelligent Paging The intelligent paging scheme is a variation of sequential

paging, where the paging order is calculated probabilistically based on pre-established probability metrics [15]. Intelligent paging aims to poll the correct paging area on the first pass, with a high probability of success. This efficient ordering of paging areas requires a comprehensive knowledge of user residence probabilities. [3] discusses that the success of an intelligent paging scheme hinges on the ability of an algorithm to calculate the probability of a user residing in each cell of the current location area.

An algorithm to calculate the paging area ordering based on a probability transition matrix is presented in [8], claiming to result in the optimal poll ordering. The computational overhead involved in this scheme is quite high however, requiring the computation of an n×n matrix for a system with n cells, and hence is infeasible for a large cellular network.

C. Comparison of Location Update and Paging Location update involves reverse control channels while

paging involves forward control channels. The total location management cost is the sum of the location update cost and the paging cost. There is a trade-off between the location update cost and the paging cost. If a mobile station updates its location more frequently (incurring higher location update cost), the network knows the location of the mobile station better. Then the paging cost will be lower when an incoming call arrives for the mobile station. Therefore both location update and paging costs cannot be minimized at the same time. However, the total cost can be minimized or one cost can be minimized by putting a bound on the other cost. For example, many researchers try to minimize the location update cost subject to a constraint on the paging cost.

The cost of paging a mobile station over a set of cells or location areas has been studied against the paging delay [17]. There is a trade-off between the paging cost and the paging delay. If there is no delay constraint, the cells can paged sequentially in order of decreasing probability, which will result in the minimal paging cost. If all cells are paged simultaneously, the paging cost reaches the maximum while the paging delay is the minimum. Many researchers try to minimize the paging cost under delay constraints.

D. Mobility Models The mobility pattern also plays an important role when

evaluating the performance of a location management scheme. A mobility model is usually used to describe the mobility of an individual subscriber. Sometimes it is used to describe the aggregate pattern of all subscribers. The following are several commonly used mobility models.

• Fluid Flow The fluid flow model has been used in [18] to model the

mobility of vehicular mobile stations. It requires a continuous movement with infrequent speed and direction changes. The fluid flow model is suitable for vehicle traffic in highways, but not suitable for pedestrian movements with stop-and-go interruption.

• Random Walk The random walk mobility model is regularly used to model

the movements of users in a cellular network. It assumes that the direction of each user-movement is completely random, and hence each neighboring cell may be visited with equal probability. This model is easily implemented, as it requires no state information to predict the next cell occupied by a user. [3] refers to random walk as the memory-less movement model owing to this property. [4] presents a two-dimensional random walk model, capable of representing both cell crossing rate and cell residence time, for either square or hexagonal cells. This model represents a large amount of movement information while remaining highly tractable, due to the random approach. While the accuracy of a random model is higher than may be expected, given the complexity and irregularity of real-world networks the simplistic scheme fails to capture sophisticated movement patterns exhibited by real users.

• Markovian The Markovian mobility model defines distinct

probabilities for movement from a given cell to each of its neighbors. These probabilities are dependent on individual user movement histories. This scheme is based on the assumption that a user moving in a given direction will continue in a similar direction with greater probability than a divergence from course. Markovian models are able to capture movement patterns well but need an established concept of user movement from which to base probabilities [2].

• Activity-Based Activity-based models are the most recent and

comprehensive in representing movement throughout a cellular network. They aim to reflect individual user behaviors based on parameters such as time of day, location and destination [9].

PROCEEDINGS OF WORLD ACADEMY OF SCIENCE, ENGINEERING AND TECHNOLOGY VOLUME 21 JANUARY 2007 ISSN 1307-6884

PWASET VOLUME 21 JANUARY 2007 ISSN 1307-6884 318 © 2007 WASET.ORG

Page 190: Mobile Computing Unit 1 , 2

IV. CONCLUSION & FUTURE WORK This paper has surveyed research on location management

in cellular networks. Location management involves two operations: location update and paging. Paging is performed by the network to find out the cell in which a mobile station is located so the incoming call for the mobile station can be routed to the corresponding base station. Location update is done by the mobile station to let the network know its current location. There are three metrics involved with location management: location update cost, paging cost, and paging delay. The overall conclusion of this study is that static Location Management schemes are becoming increasingly out of date. While they are still used where cost or resource availability is an issue, upgrading to dynamic schemes is preferable. However, dynamic Location Management schemes have not yet become a panacea, as many schemes are still only theories, being insightful developments, but not useful under real-world conditions. Consequently, dynamic Location Management must continue to be researched and improved.

Given the increasing number of cellular users in an on-demand world, and transitions occurring from 2G to 3G and beyond, Location Management must and will continue to improve both Location Update and paging costs, while allocating appropriate Location Areas in a practical, implementable fashion.

REFERENCES [1] I.F. Akyildiz, J.S.M. Ho & Yi-Bing Lin. Movement-based location

update & selective paging for pcs N/Ws. Networking, IEEE/ACM Transactions on, 4(4):629–638, 1996.

[2] I.F. Akyildiz, Yi-Bing Lin, Wei-Ru Lai, Rong-Jaye Chen. A new random walk model for pcs networks. Selected Areas in Communications, IEEE Journal on, 18(7):1254–1260, 2000.

[3] A. Bar-Noy, I.Kessler, M.Sidi. Mobile users: To update or not to update? Wireless Networks, 1(2):175–185, 1995.

[4] K. Chiang, N. Shenoy. A 2-d random-walk mobility model for LM studies in wireless networks. Vehicular Technology, IEEE Transactions on, 53(2):413–424, 2004.

[5] P.G. Escalle, V.C. Giner, and J.M. Oltra. Reducing location update and paging costs in a pcs network. Wireless Communications, IEEE Transactions on, 1(1):200–209, 2002.

[6] EIA/TIA. Cellular radio telecommunications intersystem operations. Technical report, July 1991.

[7] B. Furht and M. Ilyas. Wireless internet handbook - technologies, standards and applications. 2003.

[8] Daqing Gu and S.S. Rappaport. A dynamic location tracking strategy for mobile communication systems. In Vehicular Technology Conference, 1998. VTC 98. 48th IEEE, volume 1, pages 259–263 vol1, 1998.

[9] Thomas Kunz, Atif A. Siddiqi, and John Scourias. The peril of evaluating location management proposals through simulations. Wirel. Netw., 7(6):635–643, 2001.

[10] Yi-Bing Lin. Reducing location update cost in a pcs network. Networking, IEEE/ACM Transactions on, 5(1) 1997.

[11] Z. Naor, H. Levy. Minimizing the wireless cost of tracking mobile users: an adaptive threshold scheme. In INFOCOM ’98. Proceedings. IEEE, volume 2,1998.

[12] S. O., S. Onoe, S. Yasuda, A. Maebara. A new location updating method for digital cellular systems. In Vehicular Technology Conference, 1991. ’Gateway to the Future Technology in Motion’, 41st IEEE, pages 345–350, 1991.

[13] C. Rose. Minimizing the avg. cost of paging & regd: a timer-based method. Wirel. Netw., 2(2):109–116, 1996.

[14] M. Rahnema. Overview of the gsm system and protocol architecture. Communications Magazine, IEEE, 31(4), 1993.

[15] C. Rose, Roy Yates. Minimizing the avg. cost of paging under delay constraints. Wirel. Netw., 1(2):211–219, 1995.

[16] H. Xie, S. T, and D.J. Dynamic location area management & performance analysis. In Vehicular Tech. Conf., 1993 IEEE 43rd, pages 536–539, 1993.

[17] C. Rose & R. Yates, Minimizing the avg. cost of paging under delay constraints, Wireless Networks, 1 (1995) 211-219.

[18] H. Xie, S. Tabbane, and D. J., Dynamic Location Area Mgt. and Performance Analysis, Proc. 43rd IEEE Vehicular Tech. Conference, Secaucus, NJ, May 1993, pp. 536-539.

PROCEEDINGS OF WORLD ACADEMY OF SCIENCE, ENGINEERING AND TECHNOLOGY VOLUME 21 JANUARY 2007 ISSN 1307-6884

PWASET VOLUME 21 JANUARY 2007 ISSN 1307-6884 319 © 2007 WASET.ORG

Page 191: Mobile Computing Unit 1 , 2

Broadcast DisksBy Anubhav Trivedi

Introduction to Broadcasting

1. Broadcasting is distribution of audio and/or video signals which transmit programs to an audience. The audience may be the general public or a relatively large sub-audience, such as children or young adults.

2. The sequencing of content in a broadcast is called a schedule.

3. Television and radio programs are distributed through radio broadcasting or cable, often both simultaneously. By coding signals and having decoding equipment in homes, the latter also enables subscription-based channels and pay-per-view services.

4. Broadcasting forms a very large segment of the mass media. Broadcasting to a very narrow range of audience is called narrowcasting.

5. The first regular television broadcasts began in 1937.

Asymmetric Communication Environments

In many existing and emerging application domains the downstream communication capacity from servers to clients is much greater than the upstream communication capacityfrom clients back to servers. We refer to these environments as Asymmetric Communications Environments.

Communications asymmetry can arise in two ways:

Page 192: Mobile Computing Unit 1 , 2

The first is from the bandwidth limitations of the physical communications medium. Stationary servers have powerful broadcast transmitters while mobile clients have little or no transmission capability.

Because asymmetry can arise due to either physical devices or workload characteristics, the class of asymmetric communications environments spans a wide range of important systems and applications, encompassing both wired and wireless networks. Examples include:

w Wireless networks with stationary base stations and mobile clients.

W Information dispersal systems for volatile, time-sensitive information such as stock prices, weather information, traffic updates, factory floor information, etc.

i Cable or satellite broadcast television networks with settop boxes that allow viewers to communicate with the broadcasting home office, and video-on-demand servers.

o Information retrieval systems with large client populations, such as mail-order catalog services, mutual fund information services, software help desks, etc.

Broadcast Disks

1. The Broadcast Disks project is focused on the use of data broadcast to provide improved performance, scalability, and availability in an increasingly important class of networked environments, namely, those with asymmetric communication. Examples include wireless networks with mobile clients, cable and direct satellite broadcast networks, information dissemination and information retrieval applications.

2. Broadcast Disks exploits communication asymmetry by treating a broadcast stream of data that are repeatedly and cyclicly transmitted as a storage device.

Two Main Components of Broadcast Disks

1. First, multiple broadcast programs (or ``disks'') with different latencies are superimposed on a single broadcast channel, in order to provide

Page 193: Mobile Computing Unit 1 , 2

improved performance for non-uniform data access patterns and increased availability for critical data.

2. Second, the technique integrates the use of client storage resources for caching and prefetching data that is delivered over the broadcast.

Broadcast Disk Approaches

1. Flat Approach: Data is broadcasted as a union of all that is requested in a cyclic manner.

2. Skewed Approach or Random Approach: Requests are broadcasted randomly as they arrive. The goal is that the interarrival time between two instances of the same item matches the clients needs.

Assumptions

1. Wireless data broadcasting can be as storage on the air.

2. Broadcast is periodic in nature.

3. Bucket is the logical unit of broadcast.

4. Each bucket has an address or sequence no. within the broadacast.

5. Data changes often.

6. Each successive broadcast may differ in size and contents.

7. No updates during a particular broadcast.

8. Client has no prior knowledge of the structure of the broadcast.

9. Clients are interested in fetching a particular record identified by a key.

Page 194: Mobile Computing Unit 1 , 2

10.Access Time: Avg. time elapsed between beginning of search of an item to the downloading of it from broadcast channel.

11.Tuning Time: The time for which client is listening or tuning the channel.

Broadcast Scheduling Algorithms

1. FCFS

2. Round Robin

3. Priority Scheduling

4. Request Wait Algorithm

We will study Request wait algorithm

Its Assumptions:

1. Broadcast has fixed data items.

2. Time Required to transmit 1 item is called “ Broadcast Tick ”.

3. Clients keep listening after making requests.

4. Delay time errors are ignored

5. No other errors

R X W Algorithm

1. For each page with pending requests , maintain:

o PID – Page identifier

o REQcnt – No. of outstanding requests

o 1st arv – Time stamp of earliest unsatisfied request.

2. On request arrival

Page 195: Mobile Computing Unit 1 , 2

o Look up the page

o If found

o Increment REQcnt

o Else

o Add new entry ; REQcnt = 1; 1st arv = current time

3. At each broadcast

o Broadcast the page with maximum value of R X W where

o R = REQcnt

o W = clock – 1st arv , where clock is current time

Data Management in broadcast disks

The algorithm has the following steps (for simplicity, assume that data items are “pages”, that is, they are of a uniform, fixed length):

1. Order the pages from hottest (most popular) to coldest. 2. Partition the list of pages into multiple ranges,where each range contains pages with similar access probabilities. These ranges are referred to as disks. 3. Choose the relative frequency of broadcast for each of the disks. The only restriction on the relative frequencies is that they must be integers. For example given two disks, disk 1 could be broadcast three times for every two times that disk 2 is broadcast, thus, rel freq(1) = 3, and rel freq(2) = 2. 4. Split each disk into a number of smaller units. These units are called chunks (( ___ refers to the _____ chunk in disk ). First, calculate max chunks as the Least Common Multiple (LCM) of the relative frequencies. Then, split each disk into num chunks(i) = max chunks / rel freq(i) chunks. In the previous example, num chunks(1) would be 2, while num chunks(2) would be 3. 5. Create the broadcast program by interleaving the chunks of each disks

Page 196: Mobile Computing Unit 1 , 2

604 DISTRIBUTED FILE SYSTEMS CHAP. 10

10.2 THE CODA FILE SYSTEM

Our next example of a distributed file system is Coda. Coda has beendeveloped at Carnegie Mellon University (CMU) in the 1990s, and is nowintegrated with a number of popular UNIX-based operating systems such as Linux.Coda is in many ways different from NFS, notably with respect to its goal for highavailability. This goal has led to advanced caching schemes that allow a client tocontinue operation despite being disconnected from a server. Overviews of Codaare described in (Satyanarayanan et al., 1990; Kistler and Satyanarayanan, 1992).A detailed description of the system can be found in (Kistler, 1996).

10.2.1 Overview of Coda

Coda was designed to be a scalable, secure, and highly available distributedfile system. An important goal was to achieve a high degree of naming and loca-tion transparency so that the system would appear to its users very similar to apure local file system. By also taking high availability into account, the designersof Coda have also tried to reach a high degree of failure transparency.

Coda is a descendant of version 2 of the Andrew File System (AFS), whichwas also developed at CMU (Howard et al., 1988; Satyanarayanan, 1990), andinherits many of its architectural features from AFS. AFS was designed to supportthe entire CMU community, which implied that approximately 10,000 worksta-tions would need to have access to the system. To meet this requirement, AFSnodes are partitioned into two groups. One group consists of a relatively smallnumber of dedicated Vice file servers, which are centrally administered. The othergroup consists of a very much larger collection of Virtue workstations that giveusers and processes access to the file system, as shown in Fig. 10-1.

Coda follows the same organization as AFS. Every Virtue workstation hosts auser-level process called Venus, whose role is similar to that of an NFS client. AVenus process is responsible for providing access to the files that are maintainedby the Vice file servers. In Coda, Venus is also responsible for allowing the clientto continue operation even if access to the file servers is (temporarily) impossible.This additional role is a major difference with the approach followed in NFS.

The internal architecture of a Virtue workstation is shown in Fig. 10-2. Theimportant issue is that Venus runs as a user-level process. Again, there is aseparate Virtual File System (VFS) layer that intercepts all calls from client appli-cations, and forwards these calls either to the local file system or to Venus, asshown in Fig. 10-2. This organization with VFS is the same as in NFS. Venus, inturn, communicates with Vice file servers using a user-level RPC system. TheRPC system is constructed on top of UDP datagrams and provides at-most-oncesemantics.

There are three different server-side processes. The great majority of the

Page 197: Mobile Computing Unit 1 , 2

SEC. 10.2 THE CODA FILE SYSTEM 605

Vice fileserver

Virtueclient

Transparent accessto a Vice file server

Figure 10-1. The overall organization of AFS.

work is done by the actual Vice file servers, which are responsible for maintaininga local collection of files. Like Venus, a file server runs as a user-level process.In addition, trusted Vice machines are allowed to run an authentication server,which we discuss in detail later. Finally, update processes are used to keep meta-information on the file system consistent at each Vice server.

Coda appears to its users as a traditional UNIX-based file system. It supportsmost of the operations that form part of the VFS specification (Kleiman, 1986),which are similar to those listed in Fig. 10-0 and will therefore not be repeatedhere. Unlike NFS, Coda provides a globally shared name space that is maintainedby the Vice servers. Clients have access to this name space by means of a specialsubdirectory in their local name space, such as /afs. Whenever a client looks up aname in this subdirectory, Venus ensures that the appropriate part of the sharedname space is mounted locally. We return to the details below.

10.2.2 Communication

Interprocess communication in Coda is performed using RPCs. However, theRPC2 system for Coda is much more sophisticated than traditional RPC systemssuch as ONC RPC, which is used by NFS.

RPC2 offers reliable RPCs on top of the (unreliable) UDP protocol. Each timea remote procedure is called, the RPC2 client code starts a new thread that sendsan invocation request to the server and subsequently blocks until it receives an

Page 198: Mobile Computing Unit 1 , 2

606 DISTRIBUTED FILE SYSTEMS CHAP. 10

Virtual file system layerLocal filesystem interface

Network

Userprocess

Userprocess

Venusprocess

RPC clientstub

Local OS

Virtue client machine

Figure 10-2. The internal organization of a Virtue workstation.

answer. As request processing may take an arbitrary time to complete, the serverregularly sends back messages to the client to let it know it is still working on therequest. If the server dies, sooner or later this thread will notice that the messageshave ceased and report back failure to the calling application.

An interesting aspect of RPC2 is its support for side effects. A side effect is amechanism by which the client and server can communicate using anapplication-specific protocol. Consider, for example, a client opening a file at avideo server. What is needed in this case is that the client and server set up a con-tinuous data stream with an isochronous transmission mode. In other words, datatransfer from the server to the client is guaranteed to be within a minimum andmaximum end-to-end delay, as explained in Chap. 2.

RPC2 allows the client and the server to set up a separate connection fortransferring the video data to the client on time. Connection setup is done as a sideeffect of an RPC call to the server. For this purpose, the RPC2 runtime systemprovides an interface of side-effect routines that is to be implemented by theapplication developer. For example, there are routines for setting up a connectionand routines for transferring data. These routines are automatically called by theRPC2 runtime system at the client and server, respectively, but their implementa-tion is otherwise completely independent of RPC2. This principle of side effects isshown in Fig. 10-3.

Another feature of RPC2 that makes it different from other RPC systems, is

Page 199: Mobile Computing Unit 1 , 2

SEC. 10.2 THE CODA FILE SYSTEM 607

RPC

RPC clientstub

RPC serverstub

Clientside effect

Serverside effect

Clientapplication

Server

Application-specificprotocol

RPC protocol

Figure 10-3. Side effects in Coda’s RPC2 system.

its support for multicasting. As we explain in detail below, an important designissue in Coda is that servers keep track of which clients have a local copy of a file.When a file is modified, a server invalidates local copies by notifying theappropriate clients through an RPC. Clearly, if a server can notify only one clientat a time, invalidating all clients may take some time, as illustrated in Fig. 10-4(a).

Invalidate Invalidate

Invalidate Invalidate

Reply Reply

Reply Reply

Time Time

Server Server

Client Client

Client Client

(a) (b)

Figure 10-4. (a) Sending an invalidation message one at a time. (b) Sending in-validation messages in parallel.

The problem is caused by the fact that an RPC may fail. Invalidating files in astrict sequential order may be delayed considerably because the server cannotreach a possibly crashed client, but will give up on that client only after a rela-tively long expiration time. Meanwhile, other clients will still be reading fromtheir local copies.

A better solution is shown in Fig. 10-4(b). Instead of invalidating each copyone-by-one, the server sends an invalidation message to all clients in parallel. Asa consequence, all nonfailing clients are notified in the same time as it would taketo do an immediate RPC. Also, the server notices within the usual expiration time

Page 200: Mobile Computing Unit 1 , 2

608 DISTRIBUTED FILE SYSTEMS CHAP. 10

that certain clients are failing to respond to the RPC, and can declare such clientsas being crashed.

Parallel RPCs are implemented by means of the MultiRPC system(Satyanarayanan and Siegel, 1990), which is part of the RPC2 package. An impor-tant aspect of MultiRPC is that the parallel invocation of RPCs is fully transparentto the callee. In other words, the receiver of a MultiRPC call cannot distinguishthat call from a normal RPC. At the caller’s side, parallel execution is also largelytransparent. For example, the semantics of MultiRPC in the presence of failuresare much the same as that of a normal RPC. Likewise, the side-effect mechanismscan be used in the same way as before.

MultiRPC is implemented by essentially executing multiple RPCs in parallel.This means that the caller explicitly sends an RPC request to each recipient. How-ever, instead of immediately waiting for a response, it defers blocking until allrequests have been sent. In other words, the caller invokes a number of one-wayRPCs, after which it blocks until all responses have been received from the non-failing recipients. An alternative approach to parallel execution of RPCs in Mul-tiRPC is provided by setting up a multicast group, and sending an RPC to allgroup members using IP multicast.

10.2.3 Processes

Coda maintains a clear distinction between client and server processes.Clients are represented by Venus processes; servers appear as Vice processes.Both type of processes are internally organized as a collection of concurrentthreads. Threads in Coda are nonpreemptive and operate entirely in user space. Toaccount for continuous operation in the face of blocking I/O requests, a separatethread is used to handle all I/O operations, which it implements using low-levelasynchronous I/O operations of the underlying operating system. This threadeffectively emulates synchronous I/O without blocking an entire process.

10.2.4 Naming

As we mentioned, Coda maintains a naming system analogous to that ofUNIX. Files are grouped into units referred to as volumes. A volume is similar toa UNIX disk partition (i.e., an actual file system), but generally has a much smal-ler granularity. It corresponds to a partial subtree in the shared name space asmaintained by the Vice servers. Usually a volume corresponds to a collection offiles associated with a user. Examples of volumes include collections of sharedbinary or source files, and so on. Like disk partitions, volumes can be mounted.

Volumes are important for two reasons. First, they form the basic unit bywhich the entire name space is constructed. This construction takes place bymounting volumes at mount points. A mount point in Coda is a leaf node of avolume that refers to the root node of another volume. Using the terminologyintroduced in Chap. 4, only root nodes can act as mounting points (i.e., a client

Page 201: Mobile Computing Unit 1 , 2

SEC. 10.2 THE CODA FILE SYSTEM 609

can mount only the root of a volume). The second reason why volumes are impor-tant, is that they form the unit for server-side replication. We return to this aspectof volumes below.

Considering the granularity of volumes, it can be expected that a name lookupwill cross several mount points. In other words, a path name will often containseveral mount points. To support a high degree of naming transparency, a Vicefile server returns mounting information to a Venus process during name lookup.This information will allow Venus to automatically mount a volume into theclient’s name space when necessary. This mechanism is similar to crossing mountpoints as supported in NFS version 4.

It is important to note that when a volume from the shared name space ismounted in the client’s name space, Venus follows the structure of the sharedname space. To explain, assume that each client has access to the shared namespace by means of a subdirectory called /afs. When mounting a volume, eachVenus process ensures that the naming graph rooted at /afs is always a subgraphof the complete name space jointly maintained by the Vice servers, as shown inFig. 10-5. In doing so, clients are guaranteed that shared files indeed have thesame name, although name resolution is based on a locally-implemented namespace. Note that this approach is fundamentally different from that of NFS.

Network

Client A Client B

afs afslocal

Exported directorymounted by client

Exported directorymounted by client

bin

bin

pkg

pkg

Server

Naming inherited from server's name space

Figure 10-5. Clients in Coda have access to a single shared name space.

File Identifiers

Considering that the collection of shared files may be replicated and distri-buted across multiple Vice servers, it becomes important to uniquely identify eachfile in such a way that it can be tracked to its physical location, while at the sametime maintaining replication and location transparency.

Page 202: Mobile Computing Unit 1 , 2

610 DISTRIBUTED FILE SYSTEMS CHAP. 10

Each file in Coda is contained in exactly one volume. As we mentionedabove, a volume may be replicated across several servers. For this reason, Codamakes a distinction between logical and physical volumes. A logical volumerepresents a possibly replicated physical volume, and has an associated Repli-cated Volume Identifier (RVID). An RVID is a location and replication-independent volume identifier. Multiple replicas may be associated with the sameRVID. Each physical volume has its own Volume Identifier (VID), which identi-fies a specific replica in a location independent way.

The approach followed in Coda is to assign each file a 96-bit file identifier. Afile identifier consists of two parts as shown in Fig. 10-6.

RVID File handle

File handle

File handle

Server

Server

VID1,VID2

Volumereplication DB

Volumelocation DB

File server

File server

Server1

Server2

Figure 10-6. The implementation and resolution of a Coda file identifier.

The first part is the 32-bit RVID of the logical volume that the file is part of.To locate a file, a client first passes the RVID of a file identifier to a volumereplication database, which returns the list of VIDs associated with that RVID.Given a VID, a client can then look up the server that is currently hosting the par-ticular replica of the logical volume. This lookup is done by passing the VID to avolume location database which returns the current location of that specific phy-sical volume.

The second part of a file identifier consists of a 64-bit file handle thatuniquely identifies the file within a volume. In reality, it corresponds to the iden-tification of an index node as represented within VFS. Such a vnode as it iscalled, is similar to the notion of an inode in UNIX systems.

10.2.5 Synchronization

Many distributed file systems, including Coda’s ancestor, AFS, do not provideUNIX file-sharing semantics but instead support the weaker session semantics.Given its goal to achieve high availability, Coda takes a different approach and

Page 203: Mobile Computing Unit 1 , 2

SEC. 10.2 THE CODA FILE SYSTEM 611

makes an attempt to support transactional semantics, albeit a weaker form thannormally supported by transactions.

The problem that Coda wants to solve is that in a large distributed file systemit may easily happen that some or all of the file servers are temporarily unavail-able. Such unavailability can be caused by a network or server failure, but mayalso be the result of a mobile client deliberately disconnecting from the file ser-vice. Provided that the disconnected client has all the relevant files cached locally,it should be possible to use these files while disconnected and reconcile laterwhen the connection is established again.

Sharing Files in Coda

To accommodate file sharing, Coda uses a special allocation scheme thatbears some similarities to share reservations in NFS. To understand how thescheme works, the following is important. When a client successfully opens a filef, an entire copy of f is transferred to the client’s machine. The server records thatthe client has a copy of f. So far, this approach is similar to open delegation inNFS.

Now suppose client A has opened file f for writing. When another client Bwants to open f as well, it will fail. This failure is caused by the fact that theserver has recorded that client A might have already modified f. On the otherhand, had client A opened f for reading, an attempt by client B to get a copy fromthe server for reading would succeed. An attempt by B to open for writing wouldsucceed as well.

Now consider what happens when several copies of f have been stored locallyat various clients. Given what we have just said, only one client will be able tomodify f. If this client modifies f and subsequently closes the file, the file will betransferred back to the server. However, each other client may proceed to read itslocal copy despite the fact that the copy is actually outdated.

The reason for this apparently inconsistent behavior, is that a session is treatedas a transaction in Coda. Consider Fig. 10-7, which shows the time line for twoprocesses, A and B. Assume A has opened f for reading, leading to session SA .Client B has opened f for writing, shown as session SB .

When B closes session SB , it transfers the updated version of f to the server,which will then send an invalidation message to A. A will now know that it isreading from an older version of f. However, from a transactional point of view,this really does not matter because session SA could be considered to have beenscheduled before session SB .

Page 204: Mobile Computing Unit 1 , 2

612 DISTRIBUTED FILE SYSTEMS CHAP. 10

Time

Server

Client

Client

Open(RD)

Open(WR)

File f

File fClose

CloseInvalidate

Session S

Session S

A

B

Figure 10-7. The transactional behavior in sharing files in Coda.

Transactional Semantics

In Coda, the notion of a network partition plays a crucial role in defining tran-sactional semantics. A partition is a part of the network that is isolated from therest and which consists of a collection of clients or servers, or both. The basic ideais that series of file operations should continue to execute in the presence of con-flicting operations across different partitions. Recall that two operations are saidto conflict if they both operate on the same data, and at least one is a write opera-tion.

Let us first examine how conflicts may occur in the presence of network parti-tions. Assume that two processes A and B hold identical replicas of various shareddata items just before they are separated as the result of a partitioning in the net-work. Ideally, a file system supporting transactional semantics would implementone-copy serializability, which is the same as saying that the execution of opera-tions by A and B, respectively, is equivalent to a joint serial execution of thoseoperations on nonreplicated data items shared by the two processes. This conceptis discussed further in (Davidson et al., 1985).

We already came across examples of serializability in Chap. 5. The mainproblem in the face of partitions is to recognize serializable executions after theyhave taken place within a partition. In other words, when recovering from a net-work partition, the file system is confronted with a number of transactions thathave been executed in each partition (possibly on shadow copies, i.e., copies offiles that were handed out to clients to perform tentative modifications analogousto the use of shadow blocks in the case of transactions). It will then need to checkwhether the joint executions can be serialized in order to accept them. In general,this is an intractable problem.

The approach followed in Coda is to interpret a session as a transaction. Atypical session starts with explicitly opening a file by a call to open. Hereafter, a

Page 205: Mobile Computing Unit 1 , 2

SEC. 10.2 THE CODA FILE SYSTEM 613

series of read and write operations will generally follow, after which the session isterminated by closing the file with a call to close. Most UNIX system calls consti-tute a single session on their own and are also considered by Coda to be indepen-dent transactions.

Coda recognizes different types of sessions. For example, each UNIX systemcall is associated with a different session type. More complex session types arethe ones that start with a call to open. The type of a session is automaticallydeduced from the system calls made by an application. An important advantage ofthis approach is that applications that use the standardized VFS interface need notbe modified. For each session type, it is known in advance which data will be reador modified.

As an example, consider the store session type, which starts with opening afile f for writing on behalf of a specific user u, as explained above. Fig. 10-8 liststhe meta-data associated with f and user u that are affected by this session type,and whether they are only read or also modified. For example, it will be necessaryto read the access rights that user u has with respect to file f. By explicitly identi-fying the metadata that are read and modified for a specific session, it becomesmuch easier to recognize conflicting operations.

2222222222222222222222222222222222222222222File-associated data Read? Modified?2222222222222222222222222222222222222222222File identifier Yes No2222222222222222222222222222222222222222222Access rights Yes No2222222222222222222222222222222222222222222Last modification time Yes Yes2222222222222222222222222222222222222222222File length Yes Yes2222222222222222222222222222222222222222222File contents Yes Yes222222222222222222222222222222222222222222211

11111111

1111111111

1111111111

1111111111

Figure 10-8. The metadata read and modified for a store session type in Coda.

From this point on, session processing is fairly straightforward. Let us start byconsidering a series of concurrent sessions that take place within a single networkpartition. To simplify matters, assume that there is a single server contained in thepartition. When a client starts a session, the Venus process on the client machinefetches all data contained in the session’s read set and write set from the server,provided that the rules for file sharing as explained above are not violated. Indoing so, it effectively acquires the necessary read and write locks for those data.

There are two important observations to make at this point. First, becauseCoda can automatically infer the type of a session from the (first) system callmade by an application, and knows the metadata that are read and modified foreach session type, a Venus process knows which data to fetch from a server at thestart of a session. As a consequence, it can acquire the necessary locks at the startof a session.

The second observation is that because file sharing semantics are effectivelythe same as acquiring the necessary locks in advance, the approach followed in

Page 206: Mobile Computing Unit 1 , 2

614 DISTRIBUTED FILE SYSTEMS CHAP. 10

this case is the same as applying a two-phase locking (2PL) technique asexplained in Chap. 5. An important property of 2PL, is that all resulting schedulesof read and write operations of concurrent sessions are serializable.

Now consider processing sessions in the face of partitions. The main problemthat needs to be solved is that conflicts across partitions need to be resolved. Forthis purpose, Coda uses a simple versioning scheme. Each file has an associatedversion number that indicates how many updates have taken place since the filewas created. As before, when a client starts a session, all the data relevant to thatsession are copied to the client’s machine, including the version number associ-ated with each data element.

Assume that while one or more sessions are being executed at the client, anetwork partition occurs by which the client and server are disconnected. At thatpoint, Venus will allow the client to continue and finish the execution of its ses-sions as if nothing happened, subject to the transactional semantics for the single-partition case described above. Later, when the connection with the server is esta-blished again, updates are transferred to the server in the same order as they tookplace at the client.

When an update for file f is transferred to the server, it is tentatively acceptedif no other process has updated f while the client and server were disconnected.Such a conflict can be easily detected by comparing version numbers. Let Vclientbe the version number of f acquired from the server when the file was transferredto the client. Let Nupdates be the number of updates in that session that have beentransferred and accepted by the server after reintegration. Finally, let Vnow denotethe current version number of f at the server. Then, a next update for f from theclient’s session can be accepted if and only if

Vnow + 1 = Vclient + Nupdates

In other words, an update from a client is accepted only when that update wouldlead to the next version of file f. In practice, this means that only a single clientwill eventually win having the effect that the conflict is resolved.

Conflicts arise if f is being updated in concurrently executed sessions. When aconflict occurs, the updates from the client’s session are undone, and the client is,in principle, forced to save its local version of f for manual reconciliation. Interms of transactions, the session cannot be committed and conflict resolution isleft to the user. We return to this issue below.

10.2.6 Caching and Replication

As should be clear by now, caching and replication play an important role inCoda. In fact, these two approaches are fundamental for achieving the goal ofhigh availability as set out by the developers of Coda. In the following, we firsttake a look at client-side caching, which is crucial in the face of disconnectedoperation. We then take a look at server-side replication of volumes.

Page 207: Mobile Computing Unit 1 , 2

SEC. 10.2 THE CODA FILE SYSTEM 615

Client Caching

Client-side caching is crucial to the operation of Coda for two reasons. First,and in line with the approach followed in AFS (Satyanarayanan, 1992), caching isdone to achieve scalability. Second, caching provides a higher degree of faulttolerance as the client becomes less dependent on the availability of the server.For these two reasons, clients in Coda always cache entire files. In other words,when a file is opened for either reading or writing, an entire copy of the file istransferred to the client, where it is subsequently cached.

Unlike many other distributed file systems, cache coherence in Coda is main-tained by means of callbacks. For each file, the server from which a client hadfetched the file keeps track of which clients have a copy of that file cachedlocally. A server is said to record a callback promise for a client. When a clientupdates its local copy of the file for the first time, it notifies the server, which, inturn, sends an invalidation message to the other clients. Such an invalidation mes-sage is called a callback break, because the server will then discard the callbackpromise it held for the client it just sent an invalidation.

The interesting aspect of this scheme is that as long as a client knows it has anoutstanding callback promise at the server, it can safely access the file locally. Inparticular, suppose a client opens a file and finds it is still in its cache. It can thenuse that file provided the server still has a callback promise on the file for thatclient. The client will have to check with the server if that promise still holds. Ifso, there is no need to transfer the file from the server to the client again.

This approach is illustrated in Fig. 10-9, which is an extension of Fig. 10-7.When client A starts session SA , the server records a callback promise. The samehappens when B starts session SB . However, when B closes SB , the server breaksits promise to callback client A by sending A a callback break. Note that due to thetransactional semantics of Coda, when client A closes session SA , nothing specialhappens; the closing is simply accepted as one would expect.

The consequence is that when A later wants to open session S ′A , it will find itslocal copy of f to be invalid, so that it will have to fetch the latest version from theserver. On the other hand, when B opens session S ′B , it will notice that the serverstill has an outstanding callback promise implying that B can simply re-use thelocal copy it still has from session SB .

Server Replication

Coda allows file servers to be replicated. As we mentioned, the unit of repli-cation is a volume. The collection of servers that have a copy of a volume, areknown as that volume’s Volume Storage Group, or simply VSG. In the pres-ence of failures, a client may not have access to all servers in a volume’s VSG. Aclient’s Accessible Volume Storage Group (AVSG) for a volume consists of

Page 208: Mobile Computing Unit 1 , 2

616 DISTRIBUTED FILE SYSTEMS CHAP. 10

Time

Server

Client A

Client B

Open(RD)Open(RD)

Open(WR)Open(WR)

File f File f

File f

Close Close

CloseClose

Invalidate(callback break)

OK (no file transfer)

Session S

Session S Session S

Session SA A

BB

Figure 10-9. The use of local copies when opening a session in Coda.

those servers in that volume’s VSG that the client can contact. If the AVSG isempty, the client is said to be disconnected .

Coda uses a replicated-write protocol to maintain consistency of a replicatedvolume. In particular, it uses a variant of Read-One, Write-All (ROWA), whichwas explained in Chap. 6. When a client needs to read a file, it contacts one of themembers in its AVSG of the volume to which that file belongs. However, whenclosing a session on an updated file, the client transfers it in parallel to eachmember in the AVSG. This parallel transfer is accomplished by means of mul-tiRPC as explained before.

This scheme works fine as long as there are no failures, that is, for each client,that client’s AVSG of a volume is the same as its VSG. However, in the presenceof failures, things may go wrong. Consider a volume that is replicated across threeservers S1, S2, and S3. For client A, assume its AVSG covers servers S1 and S2whereas client B has access only to server S3, as shown in Fig. 10-10.

ServerS1

ServerS2

ServerS3

ClientA

ClientB

Brokennetwork

Figure 10-10. Two clients with a different AVSG for the same replicated file.

Coda uses an optimistic strategy for file replication. In particular, both A andB will be allowed to open a file, f, for writing, update their respective copies, and

Page 209: Mobile Computing Unit 1 , 2

SEC. 10.2 THE CODA FILE SYSTEM 617

transfer their copy back to the members in their AVSG. Obviously, there will bedifferent versions of f stored in the VSG. The question is how this inconsistencycan be detected and resolved.

The solution adopted by Coda is an extension to the versioning scheme dis-cussed in the previous section. In particular, a server Si in a VSG maintains aCoda version vector CVVi( f ) for each file f contained in that VSG. IfCVVi(f )[ j ] = k, then server Si knows that server Sj has seen at least version k offile f. CVVi[i ] is the number of the current version of f stored at server Si . Anupdate of f at server Si will lead to an increment of CVVi[i ]. Note that version vec-tors are completely analogous to the vector timestamps discussed in Chap. 5.

Returning to our three-server example, CVVi(f ) is initially equal to [1,1,1] foreach server Si . When client A reads f from one of the servers in its AVSG, say S1,it also receives CVV1(f ). After updating f, client A multicasts f to each server inits AVSG, that is, S1 and S2. Both servers will then record that their respectivecopy has been updated, but not that of S3. In other words,

CVV1( f ) = CVV2(f ) = [2,2,1]

Meanwhile, client B will be allowed to open a session in which it receives acopy of f from server S3, and subsequently update f as well. When closing its ses-sion and transferring the update to S3, server S3 will update its version vector toCVV3(f )=[1,1,2].

When the partition is healed, the three servers will need to reintegrate theircopies of f. By comparing their version vectors, they will notice that a conflict hasoccurred that needs to be repaired. In many cases, conflict resolution can beautomated in an application-dependent way, as discussed in (Kumar andSatyanarayanan, 1995). However, there are also many cases in which users willhave to assist in resolving a conflict manually, especially when different usershave changed the same part of the same file in different ways.

10.2.7 Fault Tolerance

Coda has been designed for high availability, which is mainly reflected by itssophisticated support for client-side caching and its support for server replication.We have discussed both in the preceding sections. An interesting aspect of Codathat needs further explanation is how a client can continue to operate while beingdisconnected, even if disconnection lasts for hours or days.

Disconnected Operation

As we mentioned above, a client is said to be disconnected with respect to avolume, if its AVSG for that volume is empty. In other words, the client cannot

Page 210: Mobile Computing Unit 1 , 2

618 DISTRIBUTED FILE SYSTEMS CHAP. 10

contact any of the servers holding a copy of the volume. In most file systems (e.g.,NFS), a client is not allowed to proceed unless it can contact at least one server. Adifferent approach is followed in Coda. There, a client will simply resort to usingits local copy of the file that it had when it opened the file at a server.

Closing a file (or actually, the session in which the file is accessed) whendisconnected will always succeed. However, it may be possible that conflicts aredetected when modifications are transferred to a server when connection is esta-blished again. In case automatic conflict resolution fails, manual intervention willbe necessary. Practical experience with Coda has shown that disconnected opera-tion generally works, although there are occasions in which reintegration fails dueto unresolvable conflicts.

The success of the approach followed in Coda is mainly attributed to the factthat, in practice, write-sharing a file hardly occurs. In other words, in practice it israre for two processes to open the same file for writing. Of course, sharing filesfor only reading happens a lot, but that does not impose any conflicts. Theseobservations have also been made for other file systems (see, e.g., Page et al.,1998, for conflict resolution in a highly distributed file system). Furthermore, thetransactional semantics underlying Coda’s file-sharing model also makes it easyto handle the case in which there are multiple processes only reading a shared fileat the same time that exactly one process is concurrently modifying that file.

The main problem that needs to be solved to make disconnected operation asuccess, is to ensure that a client’s cache contains those files that will be accessedduring disconnection. If a simple caching strategy is followed, it may turn out thata client cannot continue as it lacks the necessary files. Filling the cache inadvance with the appropriate files is called hoarding. The overall behavior of aclient with respect to a volume (and thus the files in that volume) can now besummarized by the state-transition diagram shown in Fig. 10-11.

HOARDING

EMULATION REINTEGRATION

Disconnection Reintegrationcompleted

Reconnection

Disconnection

Figure 10-11. The state-transition diagram of a Coda client with respect to a volume.

Normally, a client will be in the HOARDING state. In this state, the client isconnected to (at least) one server that contains a copy of the volume. While in thisstate, the client can contact the server and issue file requests to perform its work.Simultaneously, it will also attempt to keep its cache filled with useful data (e.g.,files, file attributes, and directories).

At a certain point, the number of servers in the client’s AVSG will drop to

Page 211: Mobile Computing Unit 1 , 2

SEC. 10.2 THE CODA FILE SYSTEM 619

zero, bringing it into an EMULATION state in which the behavior of a server forthe volume will have to be emulated on the client’s machine. In practice, thismeans that all file requests will be directly serviced using the locally cached copyof the file. Note that while a client is in its EMULATION state, it may still be ableto contact servers that manage other volumes. In such cases, disconnection willgenerally have been caused by a server failure rather than that the client has beendisconnected from the network.

Finally, when reconnection occurs, the client enters the REINTEGRATIONstate in which it transfers updates to the server in order to make them permanent.It is during reintegration that conflicts are detected and, where possible, automati-cally resolved. As shown in Fig. 10-11, it is possible that during reintegration theconnection with the server is lost again, bringing the client back into the EMULA-TION state.

Crucial to the success of continuous operation while disconnected is that thecache contains all the necessary data. Coda uses a sophisticated priority mechan-ism to ensure that useful data are indeed cached. First, a user can explicitly statewhich files or directories he finds important by storing pathnames in a hoarddatabase. Coda maintains such a database per workstation. Combining the infor-mation in the hoard database with information on recent references to a file allowsCoda to compute a current priority on each file, after which it fetches files inpriority such that the following three conditions are met:

1. There is no uncached file with a higher priority than any cached file.

2. The cache is full, or no uncached file has nonzero priority.

3. Each cached file is a copy of the one maintained in the client’s AVSG.

The details of computing a file’s current priority are described in (Kistler, 1996).If all three conditions are met, the cache is said to be in equilibrium. Because thecurrent priority of a file may change over time, and because cached files mayneed to be removed from the cache to make room for other files, it is clear thatcache equilibrium needs to be recomputed from time to time. Reorganizing thecache such that equilibrium is reached is done by an operation known as a hoardwalk, which is invoked once every 10 minutes.

The combination of the hoard database, priority function, and maintainingcache equilibrium has shown to be a vast improvement over traditional cachemanagement techniques, which are generally based on counting and timing refer-ences. However, the technique cannot guarantee that a client’s cache will alwayscontain the data the user will need in the near future. Therefore, there are stilloccasions in which an operation in disconnected mode will fail due to inaccessibledata.

Page 212: Mobile Computing Unit 1 , 2

620 DISTRIBUTED FILE SYSTEMS CHAP. 10

Recoverable Virtual Memory

Besides providing high availability, the AFS and Coda developers have alsolooked at simple mechanisms that help in building fault-tolerant processes. A sim-ple and effective mechanism that makes recovery much easier, is RecoverableVirtual Memory (RVM). RVM is a user-level mechanism to maintain crucialdata structures in main memory while being ensured that they can be easilyrecovered after a crash failure. The details of RVM are described in (Satyanaray-anan et al., 1994).

The basic idea underlying RVM is relatively simple: data that should survivecrash failures are normally stored in a file that is explicitly mapped into memorywhen needed. Operations on that data are logged, similar to the use of a writea-head log in the case of transactions. In fact, the model supported by RVM is closeto that of flat transactions, except that no support is provided for concurrency con-trol.

Once a file has been mapped into main memory, an application can performoperations on that data that are part of a transaction. RVM is unaware of datastructures. Therefore, the data in a transaction is explicitly set by an application asa range of consecutive bytes of the mapped-in file. All (in-memory) operations onthat data are recorded in a separate writeahead log that needs to be kept on stablestorage. Note that due to the generally relatively small size of the log, it is feasibleto use a battery power-supplied part of main memory, which combines durabilitywith high performance.

10.2.8 Security

Coda inherits its security architecture from AFS, which consists of two parts.The first part deals with setting up a secure channel between a client and a serverusing secure RPC and system-level authentication. The second part deals withcontrolling access to files. We will not examine each of these in turn.

Secure Channels

Coda uses a secret-key cryptosystem for setting up a secure channel betweena client and a server. The protocol followed in Coda is derived from theNeedham-Schroeder authentication protocol discussed in Chap. 8. A user is firstrequired to obtain special tokens from an authentication server (AS), as weexplain shortly. These tokens are somewhat comparable to handing out a ticket inthe Needham-Schroeder protocol in the sense that they are used to subsequentlyset up a secure channel to a server.

All communication between a client and server is based on Coda’s secureRPC mechanism, which is shown in Fig. 10-12. If Alice (as client) wants to talk

Page 213: Mobile Computing Unit 1 , 2

SEC. 10.2 THE CODA FILE SYSTEM 621

to Bob (as server), she sends her identity to Bob, along with a challenge RA , whichis encrypted with the secret key KA,B shared between Alice and Bob. This isshown as message 1.

Alic

e

Bob

1

2

4

3

A, K (R )A,B A

K

K

K

(R

(R

(K

+1, R

+1

)

)

)

A,B

A,B

A,B

A

B

S

B

Figure 10-12. Mutual authentication in RPC2.

Bob responds by decrypting message 1 and returning RA + 1, proving that heknows the secret key and thus that he is Bob. He returns a challenge RB (as part ofmessage 2), which Alice will have to decrypt and return as well (shown as mes-sage 3). When mutual authentication has taken place, Bob generates a session keyKS that can be used in further communication between Alice and Bob.

Secure RPC in Coda is used only to set up a secure connection between aclient and a server; it is not enough for a secure login session that may involveseveral servers and which may last considerably longer. Therefore, a second pro-tocol is used that is layered on top of secure RPC, in which a client obtainsauthentication tokens from the AS as briefly mentioned above.

An authentication token is somewhat like a ticket in Kerberos. It contains anidentifier of the process that obtained it, a token identifier, a session key, time-stamps telling when the token becomes valid and when it expires. A token may becryptographically sealed for integrity. For example, if T is a token, Kvice a secretkey shared by all Vice servers, and H a hash function, then [T,H (Kvice ,T)] is acryptographically sealed version of T. In other words, despite the fact that T issent as plaintext over an insecure channel, it is impossible for an intruder tomodify it such that a Vice server would not notice the modification.

When Alice logs into Coda, she will first need to get authentication tokensfrom the AS. In this case, she does a secure RPC using her password to generatethe secret key KA,AS she shares with the AS, and which is used for mutual authen-tication as explained before. The AS returns two authentication tokens. A cleartoken CT = [A,TID,KS,Tstart,Tend] identifying Alice and containing a token iden-tifier TID, a session key KS , and two timestamps Tstart and Tend indicating whenthe token is valid. In addition, it sends a secret token ST = Kvice([CT ]Kvice

∗ ), whichis CT cryptographically sealed with the secret key Kvice that is shared between allVice servers, and encrypted with that same key.

A Vice server is capable of decrypting ST revealing CT and thus the sessionkey KS . Also, because only Vice servers know Kvice , such a server can easily

Page 214: Mobile Computing Unit 1 , 2

622 DISTRIBUTED FILE SYSTEMS CHAP. 10

check whether CT has been tampered with by doing an integrity check (of whichthe computation requires Kvice).

Whenever Alice wants to set up a secure channel with a Vice server, she usesthe secret token ST to identify herself as shown in Fig. 10-13. The session key KSthat was handed to her by the AS in the clear token is used to encrypt the chal-lenge RA she sends to the server.

Alic

e

Bob

1

2

4

3K (R +1)S B

K (K )S S2

K (R +1, R )S A B

(R )AK vice(ST), KS

Figure 10-13. Setting up a secure channel between a (Venus) client and a Viceserver in Coda.

The server, in turn, will first decrypt ST using the shared secret key Kvice , giv-ing CT. It will then find KS , which it subsequently uses to complete the authenti-cation protocol. Of course, the server will also do an integrity check on CT andproceed only if the token is currently valid.

A problem occurs when a client needs to be authenticated before it can accessfiles, but is currently disconnected. Authentication cannot be done because theserver cannot be contacted. In this case, authentication is postponed and access istentatively granted. When the client reconnects to the server(s), authenticationtakes place before entering the REINTEGRATION state.

Access Control

Let us briefly consider protection in Coda. As in AFS, Coda uses access con-trol lists to ensure that only authorized processes have access to files. For reasonsof simplicity and scalability, a Vice file server associates an access control listonly with directories and not with files. All normal files in the same directory(i.e., excluding subdirectories) share the same protection rights.

Coda distinguishes access rights with respect to the types of operations shownin Fig. 10-14. Note that there is no right with respect to executing a file. There issimple reason for this omission: execution of files takes place at clients and is thusout of the scope of a Vice file server. Once a client has downloaded a file there isno way for Vice to even tell whether the client is executing it or just reading it.

Coda maintains information on users and groups. Besides listing the rights auser or group has, Coda also supports the listing of negative rights. In other words,it is possible to explicitly state that a specific user is not permitted certain accessrights. This approach has shown to be convenient in the light of immediately

Page 215: Mobile Computing Unit 1 , 2

SEC. 10.2 THE CODA FILE SYSTEM 623

2222222222222222222222222222222222222222222Operation Description2222222222222222222222222222222222222222222Read Read any file in the directory2222222222222222222222222222222222222222222Write Modify any file in the directory2222222222222222222222222222222222222222222Lookup Look up the status of any file2222222222222222222222222222222222222222222Insert Add a new file to the directory2222222222222222222222222222222222222222222Delete Delete an existing file2222222222222222222222222222222222222222222Administer Modify the ACL of the directory222222222222222222222222222222222222222222211

1111111111

111111111111

111111111111

Figure 10-14. Classification of file and directory operations recognized byCoda with respect to access control.

revoking access rights of a misbehaving user, without having to first remove thatuser from all groups.

Page 216: Mobile Computing Unit 1 , 2

Research in Data Broadcast and Dissemination

Demet Aksoy2, Mehmet Altinel2, Rahul Bose1, Ugur Cetintemel2,

Michael Franklin2, Jane Wang1 and Stan Zdonik1

1 Department of Computer Science, Brown University, Providence, RI 029122 Department of Computer Science, University of Maryland, College Park, MD 20742

1 Introduction

The proliferation of the Internet and intranets, the development of wireless and

satellite networks, and the availability of asymmetric, high-bandwidth links to

the home, have fueled the development of a wide range of new \dissemination-

based" applications. These applications involve the timely distribution of data

to a large set of consumers, and include stock and sports tickers, tra�c infor-

mation systems, electronic personalized newspapers, and entertainment delivery.

Dissemination-oriented applications have special characteristics that render tra-

ditional client-server data management approaches ine�ective. These include:

{ tremendous scale.

{ a high-degree of overlap in user data needs.

{ asymmetric data ow from sources to consumers.

For example, consider a dissemination-oriented application such as an elec-

tion result server. Typically, such applications are implemented by simply posting

information and updates on a World Wide Web server. Such servers, however,

can and often do become overloaded, resulting in the inability for users to access

the information in a timely fashion. We argue that such scalability problems are

the result of a mismatch between the data access characteristics of the applica-

tion and the technology (in this case, HTTP) used to implement the applica-

tion. HTTP is based on a request-response or RPC, unicast (i.e., point-to-point)

method of data delivery, which is simply the wrong approach for this type of

application.

Using request-response, each user sends requests for data to the server. The

large audience for a popular event can generate huge spikes in the load at servers,

resulting in long delays and server crashes. Compounding the situation is that

users must continually poll the server to obtain the most current data, resulting

in multiple requests for the same data items from each user. In an application

such as an election server, where the interests of a large part of the population

are known a priori, most of these requests are unnecessary.

The use of unicast data delivery likewise causes problems in the opposite

direction (from servers to clients). With unicast the server is required to respond

individually to each request, often transmitting identical data. For an application

with many users, the costs of this repetition in terms of network bandwidth and

server cycles can be devastating.

Page 217: Mobile Computing Unit 1 , 2

To address the particular needs of dissemination-based applications, we are

developing a general framework for describing and constructing Dissemination-

Based Information Systems (DBIS). The framework incorporates a number of

data delivery mechanisms and an architecture for deploying them in a networked

environment. The goal is to support a wide range of applications across many

varied environments, such as mobile networks, satellite-based systems, and wide-

area networks. By combining the various data delivery techniques in a way that

matches the characteristics of the application and achieves the most e�cient

use of the available server and communication resources, the scalability and

performance of dissemination-oriented applications can be greatly enhanced.

In this paper, we provide an overview of the current status of our DBIS

research e�orts. We �rst explain the framework and then describe our initial

prototype of a DBIS toolkit. We then focus on several research results that have

arisen from this e�ort.

2 The DBIS Framework

There are two major aspects of the DBIS framework.3 First, the framework

incorporates a number of di�erent options for data delivery. A taxonomy of

these options is presented in Section 2.1 and the methods are further discussed in

Section 2.2. Secondly, the framework exploits the notion of network transparency,

which allows data delivery mechanisms to be mixed-and-matched within a single

application. This latter aspect of the framework is described in Section 2.3.

2.1 Options for Data Delivery

We identify three main characteristics that can be used to describe data delivery

mechanisms: (1) push vs. pull; (2) periodic vs. aperiodic; and (3) unicast vs. 1-

to-N. Figure 1 shows these characteristics and how several commonmechanisms

relate to them.

Client Pull vs. Server Push - The �rst distinction we make among data

delivery styles is that of \pull vs. push". Current database servers and object

repositories support clients that explicitly send requests for data items when

they require them. When a request is received at a server, the server locates

the information of interest and returns it to the client. This request-response

style of operation is pull-based | the transfer of information from servers to

clients is initiated by a client pull. In contrast, push-based data delivery involves

sending information to a client population in advance of any speci�c request.

With push-based delivery, the server initiates the transfer.

The tradeo�s between push and pull revolve around the costs of initiating

the transfer of data. A pull-based approach requires the use of a backchannel for

3 Parts of this section have been adapted from an earlier paper, which appeared in the

1997 ACM OOPSLA Conference [Fran97].

Page 218: Mobile Computing Unit 1 , 2

request/response response

w/snooping

request/ polling pollingw/snooping

publish/subscribe

broadcastdisks

e-mail listdigests

e-mailinglists

publish/subscribe

PushPull

PeriodicAperiodic

Unicast 1-to-NUnicast 1-to-N

PeriodicAperiodic

Unicast 1-to-NUnicast 1-to-N

Fig. 1. Data Delivery Characteristics

each request. Furthermore, as described in the Introduction, the server must be

interrupted continuously to deal with such requests and has limited exibility

in scheduling the order of data delivery. Also, the information that clients can

obtain from a server is limited to that which the clients know to ask for. Thus,

new data items or updates to existing data items may go unnoticed at clients

unless those clients periodically poll the server.

Push-based approaches, in contrast, avoid the issues identi�ed for client-pull,

but have the problem of deciding which data to send to clients in the absence of

speci�c requests. Clearly, sending irrelevant data to clients is a waste of resources.

A more serious problem, however, is that in the absence of requests it is possible

that the servers will not deliver the speci�c data that are needed by clients in

a timely fashion (if ever). Thus, the usefulness of server push is dependent on

the ability of a server to accurately predict the needs of clients. One solution to

this problem is to allow the clients to provide a pro�le of their interests to the

servers. Publish/subscribe protocols are one popular mechanism for providing

such pro�les.

Aperiodic vs. Periodic - Both push and pull can be performed in either an

aperiodic or periodic fashion. Aperiodic delivery is event-driven|a data request

(for pull) or transmission (for push) is triggered by an event such as a user action

(for pull) or data update (for push). In contrast, periodic delivery is performed

according to some pre-arranged schedule. This schedule may be �xed, or may

be generated with some degree of randomness.4 An application that sends out

stock prices on a regular basis is an example of periodic push, whereas one that

sends out stock prices only when they change is an example of aperiodic push.

4 For the purposes of this discussion, we do not distinguish between �xed and random-

ized schedules. Such a distinction is important in certain applications. For example,

algorithms for conserving energy in mobile environments proposed by Imielinski et

al. [Imie94b] depend on a strict schedule to allow mobile clients to \doze" during

periods when no data of interest to them will be broadcast.

Page 219: Mobile Computing Unit 1 , 2

Unicast vs. 1-to-N - The third characteristic of data delivery mechanisms we

identify is whether they are based on unicast or 1-to-N communication. With

unicast communication, data items are sent from a data source (e.g., a sin-

gle server) to one other machine, while 1-to-N communication allows multiple

machines to receive the data sent by a data source. Two types of 1-to-N data

delivery can be distinguished: multicast and broadcast. With multicast, data is

sent to a speci�c subset of clients. In some systems multicast is implemented by

sending a message to a router that maintains the list of recipients. The router

reroutes the message to each member of the list. Since the list of recipients is

known, it is possible to make multicast reliable; that is, network protocols can be

developed that guarantee the eventual delivery of the message to all clients that

should receive it. In contrast, broadcasting sends information over a medium on

which an unidenti�ed and unbounded set of clients can listen. This di�ers from

multicast in that the clients who may receive the data are not known a priori.

The tradeo�s between these approaches depend upon the commonality of

interest of the clients. Using broadcast or multicast, scalability can be improved

by allowing multiple clients to receive data sent using a single server message.

Such bene�ts can be obtained, however, only if multiple clients are interested in

the same items. If not, then scalability may actually be harmed, as clients may

be continually interrupted to �lter data that is not of interest to them.

2.2 Classi�cation of Delivery Mechanisms

It is possible to classify many existing data delivery mechanisms using the char-

acteristics described above. Such a classi�cation is shown in Figure 1. We discuss

several of the mechanisms below.

Aperiodic Pull - Traditional request/response mechanisms use aperiodic

pull over a unicast connection. If instead, a 1-to-N connection is used, then

clients can \snoop" on the requests made by other clients, and obtain data that

they haven't explicitly asked for (e.g, see [Acha97, Akso98]).

Periodic Pull - In some applications, such as remote sensing, a system may

periodically send requests to other sites to obtain status information or to detect

changed values. If the information is returned over a 1-to-N link, then as with

request/response, other clients can snoop to obtain data items as they go by.

Most existing Web or Internet-based \push" systems are actually implemented

using Periodic Pull between the client machines and the data source(s) [Fran98].

Aperiodic Push - Publish/subscribe protocols are becoming a popular

way to disseminate information in a network [Oki93, Yan95, Glan96]. In a pub-

lish/subscribe system, users provide information (sometimes in the form of a pro-

�le) indicating the types of information they wish to receive. Publish/subscribe

is push-based; data ow is initiated by the data sources, and is aperiodic, as there

is no prede�ned schedule for sending data. Publish/subscribe protocols are in-

herently 1-to-N in nature, but due to limitations in current Internet technology,

they are often implemented using individual unicast messages to multiple clients.

Examples of such systems include Internet e-mail lists and some existing \push"

systems on the Internet. True 1-to-N delivery is possible through technologies

Page 220: Mobile Computing Unit 1 , 2

such as IP-Multicast, but such solutions are not universally available across the

Internet.

Periodic Push - Periodic push has been used for data dissemination in many

systems. An example of Periodic Push using unicast is Internet mailing lists that

send out \digests" on a regular schedule. For example, the Majordomo system

allows a list manager to set up a schedule (e.g., weekly) for sending digests.

Such digests allow users to follow a mailing list without being continually inter-

rupted by individual messages. There have also been many systems that use Pe-

riodic Push over a broadcast or multicast link. These include TeleText [Amma85,

Wong88], DataCycle [Herm87], Broadcast Disks [Acha95a, Acha95b] and mobile

databases [Imie94b].

2.3 Network Transparency

The previous discussion has focused primarily on di�erent modes of data delivery.

The second aspect of the DBIS framework addresses how those delivery modes

are used to facilitate the e�cient transfer of data through the nodes of a DBIS

network. The DBIS framework de�nes three types of nodes:

1. Data Sources, which provide the base data to be disseminated.

2. Clients, which are net consumers of information.

3. Information Brokers, (or agents, mediators, etc.), which acquire information

from other sources, possibly add value to that information (e.g., some ad-

ditional computation or organizational structure), and then distribute this

information to other consumers.

Brokers are the glue that bind the DBIS together. Brokers are middlemen;

a broker acts as a client to some number of data sources, collects and possibly

repackages the data it obtains, and then functions as a data source to other

nodes of the system. By creating hierarchies of brokers, information delivery can

be tailored to the needs of many di�erent users.

The ability of brokers to function as both clients and data sources provides the

basis for the notion of Network Transparency. Receivers of information cannot

detect the details of interconnections any further upstream than their immediate

predecessor. Because of this transparency, the data delivery mechanism used

between two or more nodes can be changed without requiring changes to the data

delivery mechanisms used for other communication in the DBIS. For example,

suppose that node B is pulling data values from node A on demand. Further,

suppose that node C is listening to a periodic broadcast from node B which

includes values that B has pulled from A. Node C will not have to change it's

data gathering strategy if A begins to push values to B. Changes in links are of

interest only to the nodes that are directly involved. Likewise, this transparency

allows the \appearance" of the data delivery at any node to di�er from the way

the data is actually delivered earlier in the network. This in turn, allows the

data delivery mechanisms to be tailored for a given set of nodes. For example, a

Page 221: Mobile Computing Unit 1 , 2

broker that typically is very heavily loaded with requests could be an excellent

candidate for a push-based delivery mechanism to its clients.

Current Internet \push" technology, such as that provided by PointCast [Rama98]

provide an excellent example of network transparency in action. To the user sit-

ting at the screen, the system gives the impression of using aperiodic push over

a broadcast channel. Due to current limitations of the Internet, however, that

data is actually brought over to the client machine using a stream of periodic

pull requests, delivered in a unicast fashion. Thus, the data delivery between

the client and the PointCast server is actually the exact opposite of the view

that is presented to the user in all three dimensions of the hierarchy of Figure 1.

This situation is not unique to PointCast; in fact, it is true for virtually all of

the Internet-based push solutions, and stems from the fact that current IP and

HTTP protocols do not adequately support push or 1-to-N communication.

Fig. 2. The Map Dissemination Application

3 An Initial Prototype

As stated in the introduction, our ultimate goal is to build a toolkit of com-

ponents that can be used to create a DBIS tailored to support a particular set

Page 222: Mobile Computing Unit 1 , 2

of dissemination-based applications. In order to better understand the require-

ments and desired properties of such a toolkit, we have constructed an initial

prototype toolkit and have used it to implement a weather map dissemination

application.

Figure 2 shows an example screen from this application. In this application

one or more \map servers" sends out updated maps of di�erent types (i.e.,

radar, satellite image, etc.) for di�erent regions of the United States. Clients

can subscribe to updates for speci�c types of maps for speci�c regions. They

can also pose queries to obtain the most recent versions of speci�c maps. The

DBIS components route such queries to the appropriate server(s). In the current

prototype, all maps are multicast to all clients | the clients perform additional

�ltering to avoid displaying unrequested results to the user. In the remainder of

this section, we brie y describe the implementation of the prototype toolkit.

3.1 Toolkit Description

Figure 3 shows an example instantiation of a DBIS using the current toolkit.

The toolkit consists of four main components. These are shown as lightly-shaded

items in the �gure. The darker shaded items are software that is not part of the

DBIS toolkit, namely, the data sources and clients themselves. The components

of the current prototype are:

1. Data Source (DS) Library - a wrapper for data sources that encapsulates

network communication and provides conversion functions for data.

2. Client Library - a wrapper for client programs that encapsulates network

communication and provides conversion functions for queries and user pro-

�les. The client library is also responsible for monitoring broadcast and mul-

ticast channels and �ltering out the data items of local interest that appear

on those channels.

3. Information Broker (IB) - the main component of the DBIS toolkit. The

IB contains communication, bu�ering, scheduling, and catalog management

components and is described in more detail below.

4. Information Broker Master - The IB Master is responsible for managing

global catalog information about data and about the topology of the DBIS.

All IBs must register with the IB Master and all catalog updates must be

sent to the IB Master. The presence of the IB Master is one of the major

limitations of this initial prototype, as it is obviously a potential scalability

bottleneck for the system. A large part of the design e�ort for the next

version of the prototype is aimed at distributing the functions of the IB

Master.

3.2 Data Modeling Considerations

The DBIS prototype currently uses a simple data model: the catalog consists

of a set of category de�nitions. Categories are application-speci�c, that is, each

Page 223: Mobile Computing Unit 1 , 2

Fig. 3. An Instantiation of a DBIS

application provides its own set of category de�nitions. Each data item is asso-

ciated with a single category. In addition, a set of keywords can be associated

with each data item. Categories and keywords are used in the speci�cation of

queries and pro�les. Queries are pull requests that are transmitted from a client

to a data source. Queries consist of a category and optional keywords. Queries

are processed at a data source (or an IB); all data items that match the cate-

gory (and at least one of the keywords if speci�ed) are sent to the client from

which the query originated. In contrast, pro�les are used to support push-based

delivery. When a new data item arrives at an IB, its category and keywords are

compared with the user pro�les registered at that IB and the item is sent to

any clients whose pro�le indicates an interest in the item. Thus, pro�les can be

viewed as a form of continually executing query.

Clearly, this simple approach to data modeling must be extended to sup-

port more sophisticated applications. We are currently exploring database and

WWW-based (e.g., XML) approaches for semi-structured data modeling for use

in subsequent versions of the toolkit.

3.3 Information Broker Architecture

As stated above, the Information Broker module contains most of the function-

ality of the DBIS toolkit. The architecture of an IB is illustrated in Figure 4.

Basic components of the IB are the following:

Page 224: Mobile Computing Unit 1 , 2

Fig. 4. Information Broker (IB) Architecture

{ Catalog Manager - This component manages local copies of catalog in-

formation for use by the processes running at the broker. Recall that the

primary copy of the catalog is managed by the IB Master. All requested

changes to the catalog information are sent to the IB Master, which then

propagates them to the catalog managers of all other IBs.

{ Data Source Manager - This component is in charge of receiving and

�ltering data items obtained from the data sources. It manages a separate

listener thread for each data source directly connected to the IB.

{ Broker Agent - This component is responsible for IB-to-IB interaction,

that is, when an IB receives data from another IB rather than directly from

a data source.

Page 225: Mobile Computing Unit 1 , 2

{ Broadcast Manager - Once data has been �ltered through the data source

manager or the broker agent, it is passed to the Broadcast Manager, which

has two main components. The Mapper assigns the data item to one or more

physical communication channels. The Scheduler makes decisions about the

order in which data items should be placed on those channels.

{ Network Manager - This is the lowest level of the communication com-

ponent of the IB. It sends data packets to the network according to the

information provided by the broadcast manager.

{ Client Manager - This module handles all requests that arrive from the

clients of the IB. It forwards these requests to the proper modules within

the IB and maintains communication sessions with the clients.

4 Example Research Topics

Having described our general approach to building Dissemination-Based Infor-

mation Systems, we now focus on two examples of the many research issues that

arise in the development of such systems.

Receiving Point

Clients

SERVER

Satellite Link

Broadcast

stream of page requests sent on uplink

downlink

Satellite

Fig. 5. Example Data Broadcasting Scenario

4.1 Topic 1: On Demand Broadcast Scheduling

As described in Section 2.1, one of the many possible mechanisms for data dis-

semination uses on-demand (i.e., aperiodic pull) broadcast of data. An example

scenario using such data delivery is shown in Figure 5. In this scenario, two inde-

pendent networks are used: a terrestrial network for sending pull requests to the

server, and a \listen only" satellite downlink over which the server broadcasts

Page 226: Mobile Computing Unit 1 , 2

data to all of the clients. When a client needs a data item (e.g., a web page or

database object) that it cannot �nd locally, it sends a request for the item to the

server. Client requests are queued up (if necessary) at the server upon arrival.

The server repeatedly chooses an item from among these requests, broadcasts

it over the satellite link, and removes the associated request(s) from the queue.

Clients monitor the broadcast and receive the item(s) that they require.

In a large-scale implementation of such a system, an important consideration

is the scheduling algorithm that the server uses to choose which request to ser-

vice from its queue of waiting requests. We have developed a novel on-demand

broadcast scheduling algorithm, called RxW [Akso98], which is a practical, low-

overhead and scalable approach that provides excellent performance across a

range of scenarios.

The intuition behind the RxW scheduling algorithm is to provide a balanced

performance for hot (popular) and cold (not so popular) pages. This intuition is

based on our observations of previously proposed algorithms. We have observed

that two low overhead algorithms, Most Requests First (MRF) and First Come

First Served (FCFS) [Dyke86, Wong88], have poor average case performance

because they favor the broadcasting of hot or cold pages respectively. A third

algorithm, Longest Wait First (LWF) [Dyke86, Wong88] was shown to provide

fairer treatment of hot and cold pages, and therefore, good average case perfor-

mance. LWF, however, su�ers from high overhead, making it impractical for a

large system.

Based on these observations, we set out to combine the two low-overhead

approaches (MRF and FCFS) in a way that would balance their strengths and

weaknesses. The RxW algorithm schedules the page with the maximal R �W

value where R is the number of outstanding requests for that page and W is the

amount time that the oldest of those requests has been waiting for the page.

Thus, RxW schedules a page either because has many outstanding requests or

because there is at least one request that has waited for a long time.

The algorithmworks by maintaining two sorted lists (one ordered by R values

and the other ordered by W values) threaded through the service queue, which

has a single entry for any requested page of the database. Maintaining these

sorted lists is fairly inexpensive since they only need to be updated when a

new request arrives at the server5. These two sorted lists are used by a pruning

technique in order to avoid an exhaustive search of the service queue to �nd the

maximal R�W value. This technique is depicted in Figure 6

The search starts with the pages at the top of the R list. The corresponding

W value for that page is then used to compute a limit for possible W values.

That is, after reading the top page in the R list, it is known that the maximum

RxW-valued page cannot have a W value below this limit. Next, the entry for

the page at the top of the W list is accessed and used to place a limit on the

R value. The algorithm alternates between the two queues and stops when the

limit is reached on one of them. This technique prunes the search space while

5 In contrast, for LWF the ordering can change over time, even in the absence of new

requests.

Page 227: Mobile Computing Unit 1 , 2

������������������������������

�����������������������������������

�������������������������

������������������������������

������������������������������

������������������������������

������������������������������

������������������������������

������������������������������

������������������������������

������������������������������

������������������������������

������������������������������

������������������������������

������������������������������

������������������������������

WaitRequests

limit (REQcnt)

Next (Wait)Next (Requests)

limit (1stARV)

scannedportionportion

scanned

TOP (Requests) TOP(Wait)

Fig. 6. Pruning the Search Space

still guaranteeing that the search will return the page with the maximumRxW

value.

In our experiments [Akso98], the pruning technique was shown to indeed

be e�ective { reducing the number of entries searched by 72%. While such a

substantial savings is helpful, it is probably not su�cient to keep the scheduling

overhead from ultimately becoming a limiting factor as the system is scaled to the

huge applications that will be enabled by the national and global broadcasting

systems currently being deployed.

In order to achieve even greater reductions in the search space we developed

an approximation-based version of the algorithm. By varying a single parameter

�, this algorithm can be tuned from having the same behavior as the RxW

algorithm described so far, to being a constant time approach. The approximate

algorithm selects the �rst page it encounters whose RxW value is greater than

or equal to � � threshold, where threshold is the running average of the RxW

value of the last page that was broadcast and the threshold at that time.

The setting of � determines the performance tradeo�s between average wait-

ing time, worst case waiting time, and scheduling overhead. The smaller the

value of the parameter, the fewer entries are likely to be scanned. At an extreme

value of 0, the algorithm simply compares the top entry from both the R list

and the W list and chooses the one with the highest RxW value. In this case,

the complexity of making a scheduling decision is reduced to O(1), ensuring that

broadcast scheduling will not become a bottleneck regardless of the broadcast

bandwidth, database size, or workload intensity. We demonstrated the perfor-

mance, scalability, and robustness of the di�erent RxW variants through an

extensive set of performance experiments described in [Akso98].

4.2 Topic 2: Learning User Pro�les

User pro�les, which encode the data needs and interests of users, are key com-

ponents of push-based systems. From the user's viewpoint, a pro�le provides

a means of passively retrieving relevant information. A user can submit a pro-

�le to a push-based system once, and then continuously receive data that are

(supposedly) relevant to him or her in a timely fashion without the need for

Page 228: Mobile Computing Unit 1 , 2

submitting the same query over and over again. This automatic ow of relevant

information helps the user keep pace with the ever-increasing rate of information

generation. From the system point of view, pro�les ful�ll a role similar to that of

queries in database or information retrieval systems. In fact, pro�les are a form

of continuously executing query. In a large publish subscribe system, the storage

and access of user pro�les can be be resource-intensive. Additionally, given the

fact that user interests are changing over time, the pro�les must be updated

accordingly to re ect up to date information needs.

We have developed an algorithm called Multi-Modal (MM), for incremen-

tally constructing and maintaining user pro�les for �ltering text-based data

items [Ceti98]. MM can be tuned to tradeo� e�ectiveness (i.e., accuracy of the

�ltered data items), and e�ciency of pro�le management. The algorithm receives

relevance feedback information from the users about the documents that they

have seen (i.e., a binary indication of whether or not the document was con-

sidered useful), and uses this information to improve the current pro�le. One

important aspect of MM is that it represents a user pro�le as multiple keyword

vectors whose size and elements change dynamically based on user feedback.

In fact, it is this multi-modal representation of pro�les which allows MM

to tradeo� e�ectiveness and e�ciency. More speci�cally, the algorithm can be

tuned using a threshold parameter to produce pro�les with di�erent sizes. Let us

consider the two boundary values of this threshold parameter to illustrate this

tradeo�: When the threshold is set to 0, a user pro�le is represented by a single

keyword vector, achieving an extremely low overhead for pro�le management,

but seriously limiting the e�ectiveness of the pro�le. At the other extreme, if

the threshold is set to 1, we achieve an extremely �ne granularity user model,

however the pro�le size equals the number of relevant documents observed by

the user, making it impractical to store and maintain pro�les. Therefore, it is

more desirable to consider intermediate threshold values which will provide an

optimal e�ectiveness/e�ciency tradeo� for a given application.

We evaluated the utility of MM by experimentally investigating its ability to

categorize pages from the World Wide Web. We used non-interpolated average

precision as our primary e�ectiveness metric and focused on the pro�le size

for quantifying the e�ciency of our approach. We demonstrated that we can

achieve signi�cantly higher precision values with modest increase in pro�le sizes.

Additionally, we were able to achieve precision values with small pro�les that

were comparable to, or in some cases even better than those obtained with

maximum-sized pro�les. The details of the algorithm, experimental setting, and

the results are discussed in [Ceti98].

5 Summary

The increasing ability to interconnect computers through internetworking, mo-

bile and wireless networks, and high-bandwidth content delivery to the home,

has resulted in a proliferation of dissemination-oriented applications. These ap-

plications present new challenges for data management throughout all compo-

Page 229: Mobile Computing Unit 1 , 2

nents of a distributed information system. We have proposed the notion of a

Dissemination-Based Information System (DBIS) that integrates many di�erent

data delivery mechanisms and described some of the unique aspects of such sys-

tems. We described our initial prototype of a DBIS Toolkit, which provides a

platform for experimenting with di�erent implementations of the DBIS Compo-

nents. Finally we described our work on two of the many research issues that

arise in the design of DBIS architectures.

Data Dissemination and data broadcasting are very fertile and important

areas for continued research and development. In fact, we see a migration of

data management concerns from the traditional disk-oriented architectures of

existing database systems, to the more general notion of Network Data Manage-

ment, in which the movement of data throughout a complex and heterogeneous

distributed environment is of paramount concern. Our ongoing research e�orts

are aimed at better understanding the challenges and tradeo�s that arise in the

development of such systems.

References

[Acha95a] S. Acharya, R. Alonso, M. Franklin, S. Zdonik, \Broadcast Disks: DataManagement for Asymmetric Communication Environments", Proc. ACM

SIGMOD Conf., San Jose, CA, May, 1995.[Acha95b] S. Acharya, M. Franklin, S. Zdonik, \Dissemination-based Data Delivery

Using Broadcast Disks", IEEE Personal Communications, 2(6), December,

1995.[Acha97] S. Acharya, M. Franklin, S. Zdonik, \Balancing Push and Pull for Broadcast

Data", Proc. ACM SIGMOD Conf., Tucson, AZ, May, 1997.

[Akso98] D. Aksoy, M. Franklin \Scheduling for Large-Scale On-Demand Data Broad-casting" IEEE INFOCOM '98, San Francisco, March, 1998.

[Amma85] M. Ammar, J. Wong, \The Design of Teletext Broadcast Cycles", Perf.

Evaluation, 5 (1985).

[Ceti98] U. Cetintemel, M. Franklin, and C. Giles, \Constructing User Web Access

Pro�les Incrementally: A Multi-Modal Approach", In Preparation, October,

1998.

[Dyke86] H.D. Dykeman, M. Ammar, J.W. Wong, "Scheduling Algorithms for Video-

tex Systems Under Broadcast Delivery", IEEE International Conference on

Communications, Toronto, Canada, 1986.[Fran97] M. Franklin, S. Zdonik, "A Framework for Scalable Dissemination-Based

Systems", Proc. ACM OOPSLA Conference, Atlanta, October, 1997.

[Fran98] M. Franklin, S. Zdonik. \Data in Your Face: Push Technology in Perspec-tive", Proc. ACM SIGMOD Int'l Conf. on Management of Data (SIGMOD

98), Seattle, WA, June, 1998, pp 516-519.

[Gi�90] D. Gi�ord, \Polychannel Systems for Mass Digital Communication",

CACM, 33(2), February, 1990.

[Glan96] D. Glance, \Multicast Support for Data Dissemination in OrbixTalk", IEEE

Data Engineering Bulletin, 19(3), September, 1996.

[Herm87] G. Herman, G. Gopal, K. Lee, A. Weinrib, \The Datacycle Architecture for

Very High Throughput Database Systems", Proc. ACM SIGMOD Conf.,

San Francisco, CA, May, 1987.

Page 230: Mobile Computing Unit 1 , 2

[Imie94b] T. Imielinski, S. Viswanathan, B. Badrinath, \Energy E�cient Indexing onAir", Proc. ACM SIGMOD Conf., Minneapolis, MN, May, 1994.

[Oki93] B. Oki, M. P uegl, A. Siegel, D. Skeen, \The Information Bus - An Ar-

chitecture for Extensible Distributed Systems", Proc. 14th SOSP, Ashville,NC, December, 1993.

[Rama98] S. Ramakrishnan, V. Dayal, \The PointCast Network" Proc. ACM SIG-

MOD Int'l Conf. on Management of Data (SIGMOD 98), Seattle, WA,June, 1998, p 520.

[Wong88] J. Wong, \Broadcast Delivery", Proceedings of the IEEE, 76(12), December,

1988.[Vish94] S. Viswanathan, \Publishing in Wireless and Wireline Environments", Ph.D

Thesis, Rutgers Univ. Tech. Report, November, 1994.

[Yan95] T. Yan, H. Garcia-Molina, \SIFT { A Tool for Wide-area Information Dis-semination", Proc. 1995 USENIX Technical Conference, 1995.

This article was processed using the LaTEX macro package with LLNCS style

Page 231: Mobile Computing Unit 1 , 2

Abstract—Next generation wireless/mobile networks will be IP

based cellular networks integrating the internet with cellular networks. In this paper, we propose a new architecture for a high speed transport system and a mobile management protocol for mobile internet users in a transport system. Existing mobility management protocols (MIPv6, HMIPv6) do not consider real world fast moving wireless hosts (e.g. passengers in a train). For this reason, we define a virtual organization (VO) and proposed the VO architecture for the transport system. We also classify mobility as VO mobility (intra VO) and macro mobility (inter VO). Handoffs in VO are locally managed and transparent to the CH while macro mobility is managed with Mobile IPv6. And, from the features of the transport system, such as fixed route and steady speed, we deduce the movement route and the handoff disruption time of each handoff. To reduce packet loss during handoff disruption time, we propose pre-registration scheme using pre-registration. Moreover, the proposed protocol can eliminate unnecessary binding updates resulting from sequence movement at high speed. The performance evaluations demonstrate our proposed protocol has a good performance at transport system environment. Our proposed protocol can be applied to the usage of wireless internet on the train, subway, and high speed train.

Keywords—Binding update, HMIPv6, Packet loss, Transport system, Virtual organization

I. INTRODUCTION ARIOUS factors have completely changed the role of handoff management, which faces the challenge of

adaptation to heterogeneous and multi parametric environments. These factors include the explosion of mobile data communications, the emergence of multi technology environments with diverse capabilities, the integration of such environments at both node and network sides, and the great variety of offered enduser services. Next generation wireless/ mobile networks will be IP based cellular networks integrating with the internet. Mobile IPv6 (MIPv6) was designed by the IETF to manage mobile host movement between wireless IPv6 networks. MIPv6 proposes simple and scalable macro/micro mobility management. Using MIPv6, nodes are able to access wireless IPv6 networks without changing their IP address. However, if the mobile host (MH) moves frequently, MIPv6 experiences high handoff latency and high signaling costs in updating the MH’s location [1]. Thus, many mobility management protocols [2, 3, 4, 5, 6] have been proposed to

DaeWon Lee and HeonChang Yu is with the Department of Computer

Science and Education, Korea University, Seoul, Korea (e-mail: {daelee, yuhc}@comedu.korea.ac.kr).

improve handoff performance and reduce signaling overhead. Conventional protocols separate micro mobility (intra domain) from macro mobility (inter domain) management. However, these protocols have no consideration of practical real world moving hosts. In this paper we are focused on transport system mobility that happens in real world. Based on route movement information of a transport system, we can deduce the movement route. By deduction, we construct a virtual organization (VO), which provides better service and connectivity to MHs in transport systems. By employing a special entity, using a virtual mobility anchor point (VMAP) to act as a gateway to the VO, all MHs within the VO can achieve global connectivity independent of their capabilities. The VMAP keeps a managed MH in transport system and multicasts packets to the current domain of the transport system and the new domain that the transport system moves on. We also classify VO mobility (intra VO) and macro mobility (inter VO). And handoffs in a VO are locally managed and transparent to the corresponding host (CH) while macro mobility is managed with Mobile IPv6. And, to reduce packet loss and handoff disruption time, we propose pre-registration scheme using pre-registration. Using the transport system’s fixed route and steady speed, we deduce the handoff disruption time of each handoff and request pre-registration that register MH’s suffix to all MAPs of the VO. And, through performance evaluations, we prove that our proposed protocol reduces signaling cost and packet loss by using proposed pre-registration scheme for fast moving wireless hosts.

This paper is organized as follows: section 2 presents related works about mobile IP protocols. Section 3 explains virtual organization (VO). Section 4 describes our proposed protocol based on VO. Section 5 shows comparison between the proposed protocol and HMIPv6 by performance analysis. Finally, section 6 concludes this paper.

II. RELATED WORKS The Mobile IPv6 (MIPv6) protocol is specified by the IETF

IP Routing for the wireless/mobile hosts working group [1]. MIPv6 supports mobility of IP hosts by allowing them to make use of two addresses: a home address (HoA) which represents the fixed address of the node and a care of address (CoA) which changes with the IP subnet the mobile node is currently attached. But MIPv6 has several well known weaknesses such as handoff latency and signaling overhead, which have led to macro/micro mobility, FMIPv6, and BETH [2, 3, 4, 5, 6]. Thus,

Mobility Management Architecture for Transport System

DaeWon Lee and HeonChang Yu

V

International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008

52

Page 232: Mobile Computing Unit 1 , 2

many mobility management protocols have been proposed to improve handoff performance and reduce signaling overhead.

Hierarchical mobile IPv6 (HMIPv6) is an optional extension to MIPv6 and supports an n-level hierarchy [2]. This protocol is a localized mobility management proposal that aims to reduce the signaling overhead due to user mobility. Mobility management can be classified into micro mobility (intra domain) and macro mobility (inter domain) management. Micro mobility is handled by a mobility anchor point (MAP). Mobility between separate MAP domains is handled by MIPv6. Fig. 1 shows n-level hierarchical mobility management architecture.

Fig. 1 N-level hierarchical mobility management architecture

Using n-level hierarchical architecture has at least two advantages. First, it improves handoff performance, since micro handoffs are performed locally. This increases the handoff speed and minimizes the loss of packets that may occur during transitions. Second, it significantly reduces the mobility management signaling load on the internet since the signaling messages corresponding to micro moves do not cross the whole internet but stay confined to the subnet [2].

And NTT DoCoMo proposed HMIP-Bv6 that extends HMIPv6 with buffering mechanism. It presents an IP based mobility management scheme that enhances the mobility of mobile hosts in 4G systems. There are three challenges of HMIP-Bv6: multiple interface management, active state mobility management, and dormant state mobility management. HMIP-Bv6 presents multiple interface management for multiple kinds of link layers. And, HMIP-Bv6 presents a mobility management scheme that divides active states and dormant states of the MH. In an active state, they add buffering function to the MAP. If the CH sends packets to MHs, the packets are buffered in the MAP to prevent packet loss during handoffs. In a dormant state, they use a paging scheme to conserve power of the MHs and reduce the number of control signals keeping their sessions. There are various benefits of HMIP-Bv6 [7]: reduced transmission power, packet loss during handoffs, and control signals.

However, these protocols have no consideration of practical real world moving hosts. Laptop users access wireless internet in a fixed place such as a home, school, library, etc. And pedestrians using a PDA cannot move and use the wireless internet at the same time. Usually, they stop walking to access

the wireless internet, and then start walking again. These examples only refer to the usage of wireless internet, not movement and usage of wireless internet at the same time. The cases of movement while using wireless internet are accessing wireless internet in moving transport systems such as the automobile, train, subway, and high speed train (eg. TGV). The transport system pro-vides a place to sit down and use a laptop computer. There are many MHs in a train. They join and leave continually when they change their attachment to the internet. In this case, if a MH operates under MIP or MIPv6, MIP or MIPv6 capabilities would not be able to guarantee session continuity for each node. Consider the case where link layer handoff is via a satellite link and the nodes have no radio access capabilities to perform the necessary handoffs. It is not efficient to expect each node to individually manage its mobility. Thus, the IETF proposed network mobility (NEMO) [8, 9, 10]. NEMO considers only group movement, and doesn’t consider movement on a fixed route. For example, a train departs from subnet X to Y and it passes subnet A, B, C, to subnet Y. If this route information is managed, MHs perform faster handoff and keep their sessions continuously.

III. VIRTUAL ORGANIZATION

A. Virtual Organization and VO Mobility There are a large number of MHs requiring global

connectivity in transport systems such as ships, aircrafts and trains. Although 802.16/ WIBRO is proposed, mobility management protocols [2, 3, 4, 5, 6] do not consider usage of wireless internet in transport systems. Even if MHs have random mobility, transport systems are moving on a determined route and the MHs are in the transport system. Generally, transport systems have a fixed route to the destination. There are two factors for moving with a transport system. One is the steady speed of the transport system and the other is its fixed route. Based on the steady speed and fixed route, transport system’s movement route can be deduced. By deduction, we construct a virtual organization (VO) that provides better service and connectivity to MHs in transport systems. In this paper, we define the virtual organization as follows:

Definition 1 Virtual Organization (VO) A virtual organization is the fixed route of the transport

system and consists of many domains. ■ Thus, the VO is wireless computing environment that

transport systems move on a fixed route such as automobile, train, subway, train express (TGV), etc. From user’s point of view, each of them stays fixed location but their location keeps moving within the VO. And, we separate VO mobility (intra VO) from macro mobility management using VO. We define a VO as the highest level of hierarchical architecture. VO mobility does not require binding update signaling to HA. It manages by VMAP, and minimizes handoff delay on high speed movement environment. Macro mobility requires

International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008

53

Page 233: Mobile Computing Unit 1 , 2

binding update signaling to HA as HMIPv6. Fig. 2 shows the VO and the macro mobility according to movement of the MH.

Fig. 2 VO and macro mobility

B. Design of Virtual Organization We define a VO as the highest level and we extend [2]'s

hierarchical architecture. We propose a VMAP (virtual mobility anchor point) for extending hierarchical architecture. The VMAP is a set of MAPs that makes a VO, and also it is logically on MAPs. Fig. 3 shows schematic representation of VO and protocol stack, and assumes the use of IPv6.

MAPDomain 1 Router

Domain 2 Domain 3

Domain 4

Domain N

Virtual Organization

VMAP

Internet

HomeAgent

CorrespondHost

HA CNMN MAP4G-AP Routers Routers RoutersLinkIPv6

TCP/UDPApplication

IPv6Link Link

MIPv6Link Link

IPv6Link Link

IPv6Link Link

IPv64G LinkLink

HMIPv6/IPv6TCP/UDP

Application

MIN802.11 4G Link

HMIPv6

Transport System

Fig. 3 Schematic representation of VO and protocol stack

IV. PROPOSED PROTOCOL

A. Protocol Overview In our proposed hierarchical structure, since a MH moves

into a transport system, the MH moves as the transport system’s moves. When the MH attaches to a new network, it is required to register with the MAP serving the network domain. If the domain belongs in the VO, the MAP is required to register with the VMAP serving the VO. After registration, the VMAP intercepts all packets addressed to the MH and tunnels them to the MAP, and the MAP tunnels them to the MH. If the MH moves into a different domain in a VO, new global address (GCoA) binding with the VMAP is required. Usually, the MH will use the VMAP’s address as the GCoA and LCoA can be formed according to methods described in [2, 11]. After these addresses are formed, the MH sends a regular MIPv6 binding update to the MAP which binds the MH’s GCoA to the LCoA, and the MAP sends an extended MIPv6 binding update to the VMAP which binds the MH’s virtual care of address (VCoA) to the GCoA. In response, the MAP sends a binding

acknowledgement (BAck) to the MH, and the VMAP sends a BAck to the MAP. Furthermore, the MH must also register its new LCoA with its HA by sending another binding update that binds the HoA to the VCoA. Finally, it may send a binding update to its current corresponding nodes, specifying the binding between its HoA and the newly acquired VCoA.

B. Registration Phase MH gets several CoAs (LCoA, GCoA, VCoA) and registers

each of them with VMAP, MAP, HA, CH. This registration phase differs in VO mobility and macro mobility. Fig. 4 and fig. 5 show the registration phase and its call-flow. If the MH moves anywhere in VO, the packet is delivered to VMAP that is the highest hierarchy, and it is directly forwarded to MH. And BUs are only sent outside the VO (HA and CH), when MH moves out the VO. Therefore, our protocol using VMAP reduces signaling overhead on macro mobility.

Fig. 4 Registration phase

Fig. 5 Call-flow of the registration phase

C. Virtual Organization and Virtual Mobility Anchor Point Discovery

To perform the registration operation in section IV. B, a MH needs the following information:

- the prefix of the domain - the depth of the hierarchy - the network prefix of MAP - the domain in VO or Not This information is advertised by a new option used that we

extended in the Router Advertisement message of the IPv6 Neighbor Discovery [12]. Fig. 6 shows extended router advertisement message format.

International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008

54

Page 234: Mobile Computing Unit 1 , 2

ICMP Fields: O 1-bit "virtual organization" flag. When it is set, MHs use

to notice the domain is in VO

Fig. 6 Extended router advertisement message format

D. Packet Delivery When a CH sends packets to MH, the CH uses its VCoA.

VMAP intercepts packets and encapsulates packets to MH’s GCoA. Then MAP intercepts packets and encapsulates packets to MH’s LCoA. Then, packets are forwarded to MH.

When a MH sends packet, it sets the source field of IP header to its LCoA. And using home address option, it specifies its home address. Fig. 7 shows the call-flow of packet delivery.

Fig. 7 Call-flow of packet delivery

E. Pre-registration Scheme Our proposed pre-registration scheme addressed to deliver

packets to an MH as soon as its attachment is detected by the new AR. In this system, the arrival time to the destination is easily calculated, because the transport system has fixed route and steady speed. Thus we proposed pre-registration mechanism at VMAP. When the MH enters into the VO, the VMAP deduces the handoff disruption time of each handoff and requests pre-registration that registers MH’s suffix to all MAPs of the VO. And the VMAP sets multicasting timer up before each handoff disruption time. If packets arrive to the VMAP during deduced handoff disruption time, the VMAP buffers these packets. Then the VMAP forwards them to pMAP and nMAP before finishing registration. Fig. 8 shows the condition of packet multicast by movement of transport system. Fig. 9 shows the call-flow of pre-registration.

Fig. 8 The condition of packet multicast by movement of transport system

Packet m

ulticast

Fig. 9 Call-flow of pre-registration

Proposed protocol reduces BU at VO mobility. It has better performance with VO that consists of many domains. Also proposed protocol reduces handoff packet loss and handoff disruption time using pre-registration scheme.

V. SIGNALING COST FUNCTION We will analyze signaling costs of Mobile IPv6, HMIPv6,

and proposed protocol then compare one another. An analysis is done for a MN which is located in a VO since signaling costs in a HA are the same for Mobile IPv6, HMIPv6, and proposed protocol.

Following is the notations for analysis:

jiC − is the registration cost when a MN moves from subnet j to subnet i.

∏i is the location probability of a user in subnet i. λ is the incoming data rate for a MN

rR is the refresh rate that a MN renews its location.

it is the time duration that a MN stays in a PA.

HAARC − is the registration cost between a AR and a HA.

MAPARC − is the registration cost between a AR and a MAP.

VMAPMAPC − is the registration cost between a MAP and a VMAP.

A. Mobile IPv6 In MIPv6, signaling costs consist of only registration costs,

such that the first term is the average registration costs with a

International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008

55

Page 235: Mobile Computing Unit 1 , 2

new AR and the second term is the average registration costs with MN’s HA in equation (1). Signaling costs in Mobile IPv6 depend on the distance between the AR and the HA. Therefore, if the distance between the FA and the HA is fixed, signaling costs are constant regardless of the mobility and call arrival pattern.

∑ ∑ ∏∏= =

−− +=N

i

N

ji irHAARi ijMIP tRCCC

1 1}{ (1)

B. Hierarchical Mobile IPv6 In HMIPv6, signaling costs only depend on registration costs

like MIPv6, but it is deployed on a hierarchical architecture. There are two independent events as follows: the first registration in a new domain, and the subsequent registration within the same domain. The first registration costs in a new RA are derived in equation (2).

}{ HAMAPMAPARi ijinit CCCC −−− ++= ∏ (2)

, where subnets k and j are located in different domains. The subsequent registration costs are derived in equation (3).

The first term is the registration cost from a MN to its FA and the second term is the registration cost from the AR to its MAP.

∏∑ ∑ ∏∏ −= =

−− ++=i irHAMAP

N

i

N

ji MAPARi ijHMIP tRCCCC }{

1 1

(3)

C. Proposed Protocol Signaling costs in proposed protocol consist of registration

and pre-registration costs. There are three independent events as follows: (i) the first registration in a new VO, (ii) the subsequent registration within the same domain, and (iii) the first registration with pre-registration scheme in a new VO.

The first registration cost in a new VO is given by equation (4).

}{ HAMAPVMAPMAPMAPARi ijinit CCCCC −−−− +++= ∏ (4)

, where subnets k and j are located in different VOs. The first term in equation (4) is the average registration cost

for a MN’s movement from a subnet k to j and the second term is the average registration cost from an AR to its MAP. The third term in equation (4) is the registration cost from the MAP to VO’s VMAP, and the fourth term is the registration cost from the VMAP to MH’s HA. Note that this registration cost only happens when a MH moves into a new VO.

The subsequent registration costs within same VO are

∏∑ ∑ ∏∏ −= =

−− ++=i irVMAPMAP

N

i

N

ji MAPARi ijproposed tRCCCC }{

1 1

(5)

The first term in equation (5) is the average registration cost for a MN’s movement from subnet j to i and the second term is the registration costs from the AR to its MAP, and the third term is the registration cost from the MAP to VO’s VMAP.

The first registration cost with pre-registration scheme in a new VO are given by

]}[

{_

onCostregistratipreEtC

CCCC

iHAMAP

VMAPMAPMAPARi ijpreinit

−++

++=

−−−∏λ

(6)

, where subnets k and j are located in different VOs. The equation (6) is same as (4) except the last term. The last

term in equation (6) is average pre-registration cost in VO. And the registration costs with pre-registration scheme within the same VO are same as equation (5).

D. Signaling Cost Evaluation To simplify the evaluation of signaling costs for MIPv6,

HMIPv6, proposed protocol and proposed protocol with pre-registration, we assume that a MH has registered with its HA previously. The initial registration costs of HMIPv6, proposed protocol and proposed protocol with pre-registration, i.e., equations (2), (4) and (6), will be excluded in evaluation. Therefore, equations (1), (3), and (5) will be used for analyzing signaling costs for MIPv6, HMIPv6, proposed protocol and proposed protocol with pre-registration, respectively. The parameters used for the analysis are tabulated in table 1.

TABLE 1. PARAMETER SETTINGS

λ rR it 0.0008 0.03-0.05 10-1000

Fig. 10 shows how the total signaling costs are affected by

the distance between HA and AR in same domain. As a MH is distant from its HA, signaling costs are much affected in MIPv6. Signaling costs increase linearly as the distance between the HA and the AR increases in fig. 10. Since HMIPv6 and proposed protocol separate micro mobility from macro mobility, registration costs do not propagate to its HA while a MH is in the same domain. Signaling costs in HMIPv6 and proposed protocol are steady and do not change in the same domain.

Fig. 10 Total signaling in a domain

Fig. 11 Total signaling in a VO

International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008

56

Page 236: Mobile Computing Unit 1 , 2

Fig. 11 shows how the total signaling costs are affected by the distance between HA and AR in different domains within a VO. Signaling costs of MIPv6 and HMIPv6 are same. Because of the handoff between domains, HMIPv6 must perform registration to the its HA. Signaling costs in proposed protocol are steady and do not change in the same VO.

Proposed protocol has more signaling cost than HMIPv6 in fig. 10, but proposed protocol has less signaling costs in fig. 11. These results show that proposed protocol is suitable for inter domain handoff and fast movement.

Fig. 12 shows the effect of the call to mobility ratio (CMR) on total signaling cost. Similar to the performance analysis in the PCS network [14, 15], the CMR denotes the ratio of the session arri-val rate to the BU rate. It can be represented as the ratio of packet arrival rate to the average subnet residence time, i.e., itCMR αλ= from fig. 12, the proposed protocol has better performance compared to HMIPv6 when the CMR value is large. This is because the proposed protocol requires large signaling costs for constructing the VO at initial states. The proposed protocol does not require location update to the HA after constructing the VO.

Fig. 12 Effect of the call to mobility ratio on total signaling cost

VI. CONCLUSION In this paper, we propose a new architecture for high speed

transport systems and a mobile management protocol for mobile internet users in transport systems. The proposed architecture has several advantages and provides excellent solutions to the problems raised by mobility and wireless environments. It could be using transport systems: automobile, train, subway, train express (TGV), etc. Thus, we define the transport system as a virtual organization (VO) and establish a fixed route transport system to the VO. We also classify mobility into VO mobility (intra VO) and macro mobility (inter VO). The handoffs in VO are locally managed and transparent to the CH while macro mobility is managed with Mobile IPv6. From the features of the transport system, such as fixed route and steady speed, we deduce the movement route and the handoff disruption time of each handoff. To reduce packet loss during handoff disruption time, we propose pre-registration scheme using pre-registration that registers MH’s suffix to all MAPs of the VO at initial state. Moreover, the proposed

protocol can eliminate unnecessary binding updates resulting from periodic movement at high speed. The performance evaluations have demonstrated the benefits of our proposed mechanisms. Our protocol has two advantages. First, it reduces the signaling overhead from BU on internet since the signaling messages corresponding to local moves do not cross the whole internet. Second, it reduces the packet loss by using proposed pre-registration scheme. Our proposed protocol can be applied to the usage of wireless internet on the train, subway, and high speed train (eg. TGV). In the future, we plan to implement these mechanisms and measure the performance of the real system. Further, we will discuss the issues of multiple transport system and multiple VMAPs and supporting a vertical handoff on the proposed architecture.

REFERENCES [1] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support in IPv6", RFC

3775, June 2004. [2] H. Soliman, F. Castellucia, K.E. Malki, and L. Bellier, "Hierarchical

mobile IPv6 mobility management (HMIPv6)", in Internet Engineering Task Force, draft-ietf-mipshop-hmipv6-01.txt, 2004.

[3] R. Ramjee, T. La Porta, S. Thuel, K. Varadhan, L. Salgarelli, “HAWAII: a domain-based approach for supporting mobility in widearea wireless networks”, in IEEE/ACM Trans. Networking, Vol. 10, June 2002, pp. 396-410.

[4] A. T. Campbell, J. Gomez, S. Kim, Z. Turanyi, C-Y. Wan, A. Valko, “Cellular IP”, in Internet Engineering Task Force, draft-ietf-mobileip- cellularip-00.txt, January 2000.

[5] C. Williams, “Localized Mobility Management Requirements’, in Internet Engineering Task Force draft-ietf-mobileip-lmm-requirements -04.txt, October 2003.

[6] Koodli, R., "Fast Handovers for Mobile IPv6", in Internet Engineering Task Force, (work in progress), draft-ietf-mipshop-fast-mipv6-03), October 2004.

[7] Ichiro Okajima, Masahiro Inoue, Koji Omae, Hideaki Takahashi, and Narumi Umeda, “IP-based Mobility Management Technology”, in NTT DoCoMo Technical Journal Vol.5 No.2, September 2003, pp 47-54.

[8] Petrescu A., Olivereau A., Janneteau C., Lach H-Y., “Threats for Basic Netowrk Mobiltiy Support (NEMO threats)”, in Internet Engineering Task Force, (work in progress), draft-petrescunemo-threats-01.txt, January 2004.

[9] Devarapalli V., Wakikawa R., Petrescu A., Thubert P. “NEMO Basic Support Protocol”, in Internet Engineering Task Force, (work in progress), draft-ietf-nemo-basic-support-02.txt, December 2003.

[10] Ernst T., “Network Mobility Support Goals and Requirements”, in Internet Engineering Task Force, (work in progress), draft-ietf-nemo requirements-02.txt, Feb. 2004.

[11] S. Thomson and T.Narten. “IPv6 Stateless Address Autoconfiguration”, in RFC 2462, December 1998.

[12] Narten, T., Nordmark, E., and Simpson, W., “Neighbor Discovery for IP Version6. (IPv6)”, in RFC 2461, December 1998.

[13] R. Chakravorty and I. Pratt. “Performance issues with general packet radio service”, in Journal of Communications and Networks, 4(2), December 2002.

[14] A. Stephane and A. H. Aghvami, “Fast handover schemes for future wireless IP networks: a proposal and analysis”, in Proc. IEEE 53rd Vehicular Technology Conf., 2001, pp. 2046–2050.

[15] Y. Wang, W. Chen, and J.S.M. Ho, “Performance Analysis of Mobile IP Extended with Routing Agents”, in Technical Report 97-CSE-13, Southern Methodist Univ., 1997.

DaeWon Lee received his B.E. degree in Electrical Engineering from SoonChun-Hyang University and M.E. degree in Computer Science Education from Korea Univer-sity, Korea, in 2001 and 2003, respectively. He is currently a Ph.D. candidate in Com-puter Science Education from Korea University. His research interests are in Mobile computing, Distributed systems, and Grid Computing.

International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008

57

Page 237: Mobile Computing Unit 1 , 2

HeonChang Yu received his B.S., M.S. and Ph.D. degrees in Computer Science from Korea University, Seoul, in 1989, 1991 and 1994, respectively. He is currently a Professor in the Department of Computer Science Education at Korea University in Ko-rea. He was a Visiting Professor at Georgia Institute of Technology in 2004 and a Vice Dean at College of Education of Korea University in 2005. His research interests are in Grid computing, Distributed computing and Fault-tolerant systems.

International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008

58

Page 238: Mobile Computing Unit 1 , 2

1

Predictive Distance-Based Mobility Managementfor PCS Networks

Ben Liang and Zygmunt J. HaasSchool of Electrical Engineering, Cornell University, Ithaca, NY 14853

e-mail: [email protected], [email protected]

Abstract— This paper presents a mobile tracking scheme that exploitsthe predictability of user mobility patterns in wireless PCS networks. In-stead of the constant velocity fluid-flow or the random-walk mobility model,a more realistic Gauss-Markov model is introduced, where a mobile’s ve-locity is correlated in time to a various degree. Based on the Gauss-Markovmodel, a mobile’s future location is predicted by the network based on theinformation gathered from the mobile’s last report of location and veloc-ity. When a call is made, the network pages the destination mobile at andaround the predicted location of the mobile and in the order of descendingprobability until the mobile is found. A mobile shares the same predic-tion information with the network and reports its new location wheneverit reaches some threshold distance away from the predicted location. Wedescribe an analytical framework to evaluate the cost of mobility manage-ment for the proposed predictive distance-based scheme. We then comparethis cost against that of the regular, non-predictive distance-based scheme,which is obtained through simulations. Performance advantage of the pro-posed scheme is demonstrated under various mobility and call patterns,update cost, page cost, and frequencies of mobile location inspections.

I. INTRODUCTION

In the operation of wireless personal communication service(PCS) networks, mobility management deals with the tracking,storage, maintenance, and retrieval of mobile location informa-tion. Two commonly used standards, the EIA/TIA Interim Stan-dard 41 in North America ([1]) and the Global System for Mo-bile Communications in Europe ([12]), partition their coverageareas into a number of location areas(LA), each consisting ofa group of cells. When a mobile enters an LA, it reports to thenetwork the information about its current new location (locationupdate). When an incoming call arrives, the network simultane-ously pages the mobile (terminal paging) in all cells within theLA where the mobile currently resides. In these standards, theLA coverage is fixed for all users. Although dynamic LA man-agement is possible ([16]), LA-based schemes, in general, arenot flexible enough to adapt to different and differing user traf-fic and mobility patterns.

Dynamic mobility management schemes ([4] – [5]) discardthe notion of LA borders. A mobile in these schemes updatesits location based on either elapsed time, number of crossedcell borders, or traveled distance. All these parameters canbe dynamically adapted to each mobile’s traffic and mobilitypatterns, hence providing better cost-effectiveness than the LAscheme. When the LA-s are not defined, upon call arrival, thenetwork pages the destination mobile using a selective pagingscheme ([14]), starting from the cell location where the mo-bile last updated and outwards, in a shortest-distance-first order.With the assumption of a random-walk mobility model, this pag-ing scheme is the same as a largest-probability-first algorithm,

which incurs the minimum paging cost.In particular, in the distance-based scheme, a mobile per-

forms location update whenever it is some threshold distanceaway from the location where it last updated. For a system withmemoryless random-walk mobility pattern, the distance-basedscheme has been proven to result in less mobility managementcost (location update cost plus paging cost) than schemes basedon time or number of cell boundary crossings ([4]).

However, in practical systems, a mobile user usually travelswith a destinations in mind, therefore mobile’s location and ve-locity in the future are likely to be correlated with its currentlocation and velocity. The memoryless nature of the random-walk model makes it unsuitable to represent such behavior. An-other widely used mobility model in cellular network analysisis the fluid-flow model ([16] and [17]). The fluid-flow modelis suitable for vehicle traffic in highways, but not pedestrianmovements with frequent stop-and-go interruptions. A discreteMarkovian model is reported in ([4]). However, in this model,the velocity of the mobiles is overly simplified and character-ized by three states only. In this paper, we introduce a Gauss-Markov ([15] and [13]) mobility model, which captures theessence of the correlation of a mobile’s velocity in time. TheGauss-Markov model represents a wide range of user mobilitypatterns, including, as the two extreme cases, the random-walkand the constant velocity fluid-flow models.

In systems with correlated velocity mobility patterns, un-like those with random-walk mobility patterns, the largest-probability location of a mobile is generally not the cell wherethe mobile last reported. Thus a mobility management schemethat takes advantage of the predictability of the mobiles’ loca-tion can perform better.

In our proposed predictive distance-based mobility manage-ment scheme, the future location of a mobile is predicted basedon the probability density function of the mobile’s location,which is, in turn, given by the Gauss-Markov model based on itslocation and velocity at the time of the last location update. Theprediction information is made available to both the network andthe mobiles. Therefore, a mobile is aware of the network’s pre-diction of its location in time. The mobile checks its positionperiodically (location inspection) and performs location updatewhenever it reaches some threshold distance (update distance)away from the predicted location. To locate a mobile, the net-work pages the mobile starting from the predicted location andoutwards, in a shortest-distance-first order, and until the mobileis found.

Page 239: Mobile Computing Unit 1 , 2

2

The cost of mobility management is defined as the sum ofa mobile’s location update cost and the cost incurred in pag-ing the mobile. We derive an analytical framework to evaluatethe mobility management cost of the predictive distance-basedscheme, which is a function of the traffic and mobility patterns,the update distance, the relative cost of location update versuspaging, and the location inspection frequency. The cost of thenon-predictive distance-based scheme is evaluated through sim-ulations, and is compared with the proposed predictive scheme.We find the performance gains of the predictive scheme basedon the optimal updating distance that results in the minimummobility management cost.

In Section II, we describe the Gauss-Markov mobility modeland the prediction algorithm, showing that the proposed schemefollows the rule of largest-probability-first. Section III presentsthe analytical framework for evaluating the predictive scheme.The numerical results based on the analysis are presented in Sec-tion IV, where we compare the mobility management costs ofboth schemes and show the performance gains achieved by pre-diction. Finally, the concluding remarks are discussed in SectionV.

II. SYSTEM DESCRIPTION

A. The Gauss-Markov Mobility Model

We consider here a one-dimensional cellular system todemonstrate the cost-effectiveness of the predictive scheme.The multi-dimensional extension to this mobility model and theassociated analysis framework can be developed similarly bysubstituting a vector of random processes for the single randomprocess used in this paper.

A mobile’s velocity is assumed to be correlated in time andmodeled by a Gauss-Markov process. In continuous-time, a sta-tionary Gauss-Markov process is described by the autocorrela-tion function ([15])

Rv��� � E�v�t�v�t � ��� � ��e��j� j � (1)

where �� is the variance, and � � � determines the degree ofmemory in the mobility pattern. Equation (1) is also sometimescalled the Ornstein-Uhlenbeck solution of the Brownian motionwith zero restoring force ([13].

We define a discrete version of the mobile velocity with

vn � v�n�t� � (2)

and� � e���t � (3)

where �t is the clock-tick period (normalized to � throughoutthis paper). Then the discrete representation of (1) is ([7])

vn � �vn�� � ��� ��� �p�� ��xn�� � (4)

where � � � � �, � is the asymptotic mean of vn when napproaches infinity, and xn is an independent, uncorrelated, andstationary Gaussian process, with mean �x � � and standard

deviation �x � �, where � is the asymptotic standard deviationof vn when n approaches infinity.

Define the initial n � � as the time when a mobile last up-dates its location and velocity. We can recursively expand (4) toexpress vn explicitly in terms of the initial velocity v�,

vn � �nv� � ��� �n���p�� ��

n��Xi��

�n�i��xi � (5)

Define sn as the displacement of a mobile, at time n, from itslast updated location. By definition, s� � �. Furthermore,

sn �

n��Xi��

vi � (6)

B. Mobility Tracking

In most practical systems, a mobile cannot continuously mon-itor its location or velocity1. Assuming that each mobile per-forms location inspection periodically, the optimal value of thislocation inspection frequency is a variable, which depends onthe cost of the location and velocity checking process, which,in turn, depend upon many other factors such as the trackingand paging methods involved, the communication channel us-age, and the computational power of the mobile’s CPU.

Suppose the mobile examines its location everym clock ticks.We define

yk �

km�m��Xi�km

vi � (7)

Then

yk �km�m��Xi�km

��iv� � ��� �i���p

�� ��i��Xj��

�i�j��xj�

� �km�� �m

�� �v� �

�m�

�� �m

�� �

�� (8)

�p�� ��

km�m��Xi�km

i��Xj��

�i�j��xj �

Since xj above is Gaussian with zero mean, for any constant v�,yk is a Gaussian process with mean

�yk � �km�� �m

�� �v� �

�m�

�� �m

�� �

�� � (9)

Thus, a mobile’s location displacement from its last updatedlocation at its kth location inspection since the last location up-date is

skm�� �

k��Xi��

yi � (10)

�We will not address in this paper the exact mechanism by which a mobilemonitors its location and velocity. One possibility is for a mobile to use base-station beaconing signals to determine its position, and to average position dis-placement over time to find its velocity. Other methods and related referenceson mobile location and velocity determination can be found in ([9]).

Page 240: Mobile Computing Unit 1 , 2

3

which is also a Gaussian random variable with mean

�sk �

k��Xi��

�yi � (11)

In the regular, non-predictive distance-based mobility man-agement scheme, a mobile transmits a location update to thePCS network at the kth location inspection if jskm��j is greaterthan a distance threshold, N . When a call is made to a mobile,the system pages the mobile in cells at and around the mobile’slast reported location, in a shortest-distance-first order, and untilthe mobile is found.

In the proposed predictive distance-based scheme, a mobilereports both its location and velocity as part of the location up-date process. Thus, both the PCS network and the mobile makethe same prediction of the probability distribution of skm�� forany k. A mobile transmits a location update to the PCS net-work at the kth location inspection if jskm�� � �sk j is greaterthan a distance threshold , N . When a call is made to a mobile,the system pages for the mobile in cells at and around �sk , in ashortest-distance first order, and until the mobile is found. Here,we have assumed that the call arrival intervals are much greaterthan the location inspection interval, such that we can assumethat calls arrive at the end of location inspection intervals.

Let s�km�� be a random variable representing a mobile’s lo-cation displacement, at the kth location inspection, from its lastreported location, given that the mobile has not performed lo-cation update up to the kth location inspection. Since, with-out consideration of location updates, skm�� is Gaussian withmean �sk , and the location update process affects the proba-bility density function (PDF) of a mobile’s location symmet-rically around �sk , the optimal prediction of s�km��, in termsof the largest probability, is still �sk . Furthermore, since theprobability density of s�km�� ramps down symmetrically around�sk , the predictive distance-based paging scheme is a largest-probability-first scheme, which satisfies the requirement of min-imum cost selective paging. Therefore, we can expect the pre-dictive scheme to incur lower mobility management cost thanthe non-predictive distance-based scheme2.

In the next section, we introduce an analytical frameworkto evaluate the mobility management cost of the predictivedistance-based scheme.

III. COST EVALUATION OF THE PREDICTIVE

DISTANCE-BASED MOBILITY MANAGEMENT SCHEME

A. PDF of Time Interval between Two Consecutive AutonomousLocation Updates

Since within a phone call duration, the position of a mobile isclosely monitored, a call arrival has the same effect as a mobilelocation update. Here we distinguish a location update basedon distance as autonomous update. We first consider the time

�Paging delay constraints and reliability considerations are not addressedhere. For systems with paging delay constraints, the proposed scheme can beeasily extended using the methods similar to those reported in ([10], [3]), and([14]). For reliability considerations, methods similar to those described in ([8]could be used.

interval between two consecutive autonomous location updateswithout the interruption of phone calls.

Shifting the center of the PDF of yk and skm�� to the origin,we define

wk � yk � �yk (12)

rk � skm�� � �sk � (13)

Then, in the predictive distance-based scheme, the mobile up-date condition at the kth location inspection becomes

jrkj � N � (14)

and the following recursive equation holds between location up-dates:

rk � rk�� � wk�� � (15)

Next, we derive a recursive formula to find wk. Defining Ci�j

as the auto-covariance of wk,

Ci�j � E�wiwj � � (16)

the PDF of wk is completely determined by Ck�k .Furthermore, we have the following recursive relation

wk �Ck���k

Ck���k��wk�� �

s��

C�k���k

Ck���k��Ck�k

zk�� � (17)

where zk�� is a Gaussian process, independent of wk and withvariance equal to Ck�k . Equation (17) can be justified by verify-ing that

E�wk � � � � (18)

E�wkwk��� �Ck���k

Ck���k��Ck���k�� (19)

� Ck���k �

and

E�w�k � �

C�k���k

C�k���k��

Ck���k�� �

���

C�k���k

Ck���k��Ck�k

�Ck�k

� Ck�k � (20)

The auto-covariance of wk in (17) can be computed as fol-lows. Since

Ck�k � E�y�k�� ��yk (21)

� E

�����p�� ��

km�m��Xi�km

i��Xj��

�i�j��xj

A��� �

exchanging the order of the above double summation, and thendividing it into two independent parts, we have

Ck�k � ��� ���E��A�B��� � (22)

Page 241: Mobile Computing Unit 1 , 2

4

where

A �

km��Xj��

xj��j��

km�m��Xi�km

�i

B �

km�m��Xj�km

xj��j��

km�m��Xi�j��

�i � (23)

Since both A and B are summations of independent zero-meanGaussian variables,

E�A�� �

km��Xj��

�����j��

��km�m��X

j�km

�i

A�

� (24)

and

E�B�� �

km�m��Xj�km

�����j��

��km�m��X

j�j��

�i

A�

� (25)

Therefore,

Ck�k � ��� ����E�A�� � E�B��� (26)

� �����km��� �m�� �m��� ���� ���� �m�

��� ����

Equation (27) suggests that Ck�k is approximately a bell-shapedfunction of �, starting fromm�� when � � �, ending at 0 when� � �, and reaching the maximum at some � � ��� ��. This factis useful when, in the numerical analysis section, we study theeffect of memory in a user’s mobility pattern on the cost of thepredictive scheme.

To compute Ck���k , we have

Ck���k � E�yk��yk�� �yk���yk (27)

� E

����p�� ��

km��Xi�km�m

i��Xj��

�i�j��xj

A

��p�� ��

km�m��Xi�km

i��Xj��

�i�j��xj

A� �

Exchanging the order of the above double summations, then di-viding each into two independent parts, we have

Ck���k � ��� ����

E

����km�m��X

j��

km��Xi�km�m

�i�j��xj �km��X

j�km�m

km��Xi�j��

�i�j��xj

A

��km��X

j��

km�m��Xi�km

�i�j��xj �km�m��Xj�km

km�m��Xi�j��

�i�j��xj

A� �

Cancelling out uncorrelated products and combining the inde-pendent Gaussian random variables, we have

Ck���k � ��� ����� �

��km�m��X

j��

�km��X

i�km�m

�i�j�� �

km�m��Xi�km

�i�j��

km��Xj�km�m

��km��X

i�j��

�i�j�� �

km�m��Xi�km

�i�j��

AA

� ����� �m����� ��km�m�

��� ���� (28)

Defining �k �Ck���k

Ck���k��and uk �

r��

C�k���k

Ck���k��Ck�kzk��,

from (17), we have

wk � �kwk�� � uk � (29)

Let fwkand fuk be the PDF of wk and uk respectively. Since

uk is independent of wk��,

fwk�w� �

�kfwk��

�w��k� � fuk �w� � (30)

where � denotes one-dimensional convolution.We further define the following functions:

� prkwk���r� w�: Probability that rk � r and wk�� � w, and

that there is no update up to time k � �� qrkwk��

�r� w�: Probability that rk � r and wk�� � w, andthat there is no update up to time k� qrkwk

�r� w�: Probability that rk � r and wk � w, and thatthere is no update up to time k

� hN �r� �

1 , �N � r � N0 , otherwise

� where N is the distance

to update� F �k�: Probability that there is no update up to time k� f�k�: PDF of time between two consecutive updates

The initial distribution of mobile displacement w� can be de-termined from (9) by setting v� � �. The location distributionsat time k � � can then be found with the following iterativesteps:

Step 0. pr�w��r� w� � fw��w��r � w�; set k � �;Step 1. qrkwk��

�r� w� � prkwk���r� w�hN �r�;

Step 2. F �k� �R���

R��� qrkwk��

�r� w�dwdr

Step 3. qrkwk�r� w� � �

�kqrkwk��

�r� w�k

� � fuk �w�

Step 4. prk��wk�r� w� � qrkwk

�r � w�w�Step 5. Set k � k � �, and repeat from Step 1.

The above iteration ideally goes to k � �. However, it canbe terminated when F �k� is sufficiently small.

Then, the PDF of the update time interval is given by

f�k� � F �k � ��� F �k� � (31)

Since f�k� does not depend on v�, the update time intervals areindependent and identically distributed.

B. Cost of Mobility Management

We consider location updates between two successive call ar-rivals. As shown in Figure 1, the i.i.d. location update time in-tervals comprise a renewal process with the probability densityfunction f�t�.

Page 242: Mobile Computing Unit 1 , 2

5

tcall call

� �

update update

� ��

� �tu

Fig. 1. Renewal Process between Two Successive Call Arrivals

Let’s consider one location update. Assume that the next au-tonomous location update is at time tu and that the next call ar-rives at time � , where � tu . The probability density functionof � given that � is less than tu is

p� j��tu�t� ��e��tu�tu � t�

�� e��tu� (32)

where � is the call arrival rate, and u�t� is the step function.Thus, when a call arrives, the PDF of time elapsed since the

mobile’s last location update is

p� �t� �

Z �

p� j��tu�t�f�tu�dtu

� �e��tZ �

t

f�tu�

�� e��tudtu � (33)

Given that a call arrives at t � � after the last location update,the PDF of the mobile’s distance to the predicted location is

gr� �r� �

R���

qr�w����r� w�dwR N

�N

R��� qr�w���

�r� w�dwdr� (34)

Using a paging scheme that searches for the mobile in cellsbased on the shortest-distance-first rule, the paging cost associ-ated with locating the mobile at distance r from the predictedlocation is �br�Sc� ��Cp, where S is the cell size, and Cp isthe cost of paging one cell. Thus, the average paging cost perunit time is

Cpage � �Cp

Z �

p� ���

Z N

�N

gr� �r��br�Sc���drd� � (35)

Next, we will find the cost associated with location updates.Let u�t� denote the number of location updates within the timeinterval of length t between two successive call arrivals. Then,

Pr�u�t� � i� � F �i��t�� F �i����t� � (36)

where

F �i������

Z �

f �i��t�dt � (37)

and f �i��t� is defined by the following recursive relation

f ����t� � f�t� (38)

f �i��t� � f �i����t� � f�t� � (39)

Let M�t� be the expected value of u�t�. Then,

M�t� �

�Xi��

i�F �i��t�� F �i����t��

�Xi��

iF �i��t��

�Xi��

�i� ��F �i��t�

��Xi��

F �i��t� � (40)

From (40), the average updating cost per unit time can beobtained by

Cupdate � �Cu

Z �

�e��tM�t�dt � (41)

where Cu is the cost of a single autonomous location update.Finally, the total cost of mobility management per unit time

isCtotal � Cupdate � Cpage � (42)

IV. NUMERICAL RESULTS AND COMPARISONS

In the following numerical analysis, we normalize all costs tothe unit of the paging cost Cp. We also normalize distance to theunit of the cell size. We are interested in understanding how theremaining variables, namely, the memory factor exponent �, theaverage velocity �, the standard deviation �, the cost per loca-tion updateCu, the call arrival rate �, and the location inspectionperiod m, affect the performance gain of the predictive scheme,as compared with the non-predictive distance-based scheme, interms of the optimal Ctotal.

For the non-predictive distance-based scheme, we use com-puter simulations to determine its cost with the above six pa-rameters taking various combinations of values. In these sim-ulations, we assume an infinite one-dimensional space that isdivided into cells of size 1, where a mobile travels according tothe Gauss-Markov process defined by the mobility parameters�, �, and �. The simulations are time-driven. At the time ofinitiation, the mobile is assumed to have just experienced a callarrival. Thus, it starts from the origin (s� � �), and has ini-tial velocity with Gaussian distribution defined by � and �. Thetime of the next call arrival is randomly generated following theexponential distribution with rate �. Until a call arrives, themobile inspects its position every m clock ticks. If the mobileis N or more unit of distance away from the origin, a locationupdate is performed, and the origin is shifted to the current lo-cation. When the call arrives, the paging cost is computed basedon the mobile’s distance from the origin. Also, the updating costis computed based on the total number of location updates per-formed since time initiation. The above experiment is repeated��� times, and the average is taken for each set of parameters.

For each combination of the above six parameters, the mini-mum cost for each scheme is obtained by searching over differ-ent update distance thresholds.

We define the performance gain of prediction as the ratio be-tween the minimum Ctotal for the non-predictive scheme to

Page 243: Mobile Computing Unit 1 , 2

6

the minimum Ctotal for the predictive scheme. Thus, the pre-dictive performance gain is a function of six independent vari-ables. Instead of attempting to plot the performance gain in thesix-dimensional space, we divide the variables into two groups,��� �� �� and ���Cu�m�. For each group of variables, we studythe effect of these variable on mobility management cost in de-tail, while the variables in the other group are fixed. Due tospace limitations, we show here only the plots of the perfor-mance gain.

In Figures 2-3, we study the effect of mobility pattern,namely, ��� �� ��, on the performance gain. The other param-eters are set to ���Cu�m� � ������ ������ ���.

Figure 2 presents the plots of the performance gain versus�, for various values of �, and with fixed � � ���. Here �takes the values f����� ������� ����� ������� ���� �����g. Thiscorresponds to the memory factor � � e�� taking the val-ues f����� ��� � ����� ����� ����� ����g. For the various curves,� takes a value from f�� ����� ������� ���� ������ ���g. Theseplots demonstrate that the performance gain is a concave func-tion of �. On the one hand, when � is small, the user mobilityhas high memory level, which favors the predictive scheme. Onthe other hand, when � is large, � is small, and from (27), Ck�k

reaches a local minimum, m��, at � � �. Therefore, in thiscase, the disadvantage of the non-predictive scheme is mainlydetermined by a mobile’s average velocity, when � is not toosmall (larger than ��� in this case). Since � does not affect thecost of the predictive scheme, the predictive performance gainis larger for larger �, which leads to smaller Ck�k.

When � � �, the performance gain decreases from about 2down to unity, as the memory factor of the system decreasesfrom ���� to ����. In particular, for � � � and � � �, themobility of the mobile has the pattern of random-walk. In thiscase, the predictive scheme does not have any advantage overthe non-predictive one. However, in all other cases, the predic-tive scheme results in substantial savings. Maximum savingsare achieved when � �� �, since, in this case, the mobile mo-bility pattern is close to the fluid-flow model, where a mobile’svelocity and location is easily predictable. In this case, the onlycost incurred using the predictive scheme, is the cost of pagingonce in the cell of the predicted location, since the mobile neverneeds to update its location.

Figure 3 presents the plots of the performance gain versus �,for various values of �, and with fixed � � ������ (� � ����).Here � takes the values f�� ����� ������� ���� ������ ���g . Forthe various curves, � takes a value from f���� ���� �� �� ��g.These plots demonstrate that the performance gain is an increas-ing function of �, for � not too much larger than �. When � ismuch larger than �, as discussed in the previous figure, the mo-bility pattern is close to the fluid-flow model, and the savings byprediction are maximal and independent of the mobile’s veloc-ity. The asymptotic standard deviation, �, represents the uncer-tainty in a mobile’s velocity. Here we see that the performancegain is maximum when � is small, but there is little performancegain when the magnitude of � is close to or larger than �. Forexample, when � � ��� and � � ��, a performance gain greaterthan 10 is achieved, but when � � �, the performance gain is

10−2

10−1

100

101

1

1.5

2

2.5

3

3.5

4

4.5

5

5.5

6

β

Cm

in(n

on−

pred

) / C

min

(pre

d)

µ=0 µ=10−1 µ=10−0.5 µ=100 µ=100.5 µ=101

Fig. 2. Performance gain vs. � and � for � � ����, Cu � ����� , m � ��,

and � � ���

10−1

100

101

0

2

4

6

8

10

12

µ

Cm

in(n

on−

pred

) / C

min

(pre

d)

σ=0.1 σ=0.5 σ=1 σ=5 σ=10

Fig. 3. Performance gain vs. � and � for � � ����, Cu � ����� , m � ��,

and � � ������ (� � ����)

unity for all � in the interval [0.1, 10].Figure 4 shows the plots of the performance gain versus �,

for various values of �, and with fixed � � �. Here � takesthe values f���� ���� �� �� ��g. For the various curves, � takesa value from f����� ������� ����� ������� ���� �����g. Theseplots demonstrate that the performance gain is a faster-than-exponential decreasing function of �; this observation is inagreement with the results from the previous graph. Here wesee again that the cost gain is a concave function of �, and islarge when � is either large or small.

In Figures 5-7, we study how the parameters ���Cu�m� af-

Page 244: Mobile Computing Unit 1 , 2

7

10−1

100

101

0

5

10

15

σ

Cm

in(n

on−

pred

) / C

min

(pre

d)

β=10−2 β=10−1.5 β=10−1 β=10−0.5 β=100 β=100.5

Fig. 4. Performance gain vs. � and � for � � ����, Cu � �����, m � ��,

and � � �

fect the performance gain. We set the mobility parameters��� �� �� � �������� ���� ����.

Figure 5 presents the plots of the performance gain versus �,for various values of Cu, and with fixed m � �. Here � takesthe values f���� ������� ����� ������� ����g. For the variouscurves,Cu takes a value from f����� ������� ���� ������ ���� �����g.These plots demonstrate that the predictive performance gain isan approximately exponential decreasing function of the call ar-rival rate. However, the rate of decrement is not very steep. Forexample, with Cu � ��, the performance gain is ���, ��, and�, when � � �����, � � ����, � � ���, respectively. Theseplots also suggest that the predictive scheme gives larger costsavings when the cost per location update is larger.

Figure 6 shows the plots of the performance gain versus Cu,for the various values of m, and with fixed � � ����. Here Cu

takes the values f����� ������� ���� ������ ���� �����g. For thevarious curves, m takes a value from f� �� ��� �� ��g. Theseplots demonstrate that, except in the extreme case when m isvery large, the predictive performance gain is an approximatelylinearly increasing function of the location update cost; this ob-servation is in agreement with the results from the last figure.There are sharp turns in the curves with m � � and m � ��.This is because, for these two values of m, when Cu is rela-tively small, the obtained optimal update distance is 1 cell sizefor both the predictive scheme and the non-predictive scheme.In this case, since, in our analysis, the distance is quantized inunits of a cell, the exact update distance is not well defined here.These curves also suggest that the performance gain is largerfor smaller location inspection periods. This is studied in moredetail in the next figure.

Figure 7 presents the plots of the performance gain versus m,for the various values of �, and with fixedCu � �. Herem takesthe values f� �� ��� �� ��g. For the various curves, � takes a

10−3

10−2

10−1

1

1.5

2

2.5

3

3.5

4

4.5

λ

Cm

in(n

on−

pred

) / C

min

(pre

d)

Cu=10−1 Cu=10−0.5 Cu=100 Cu=100.5 Cu=101 Cu=101.5

Fig. 5. Performance gain vs. � and Cu for � � ���, � � ���, � � ������ ,

and m � �

10−1

100

101

102

0.5

1

1.5

2

2.5

3

3.5

Cu

Cm

in(n

on−

pred

) / C

min

(pre

d)

m=2 m=5 m=10 m=20 m=40

Fig. 6. Performance gain vs. Cu and m for � � ���, � � ���, � � ������ ,

and � � ����

value from f��������� ������� ����g. These plots demon-strate that the performance gain is an approximately linearlydecreasing function of the location inspection period. There-fore, the prediction scheme favors a system where the mobilesfrequently monitor and update their locations. However, sinceusing prediction incurs more computation and communicationcost for each location inspection, there exists a trade-off betweenthe extra cost due to frequent location inspection and the amountof performance gain, which should be considered when design-ing the optimal location inspection frequency for the proposedpredictive system.

Page 245: Mobile Computing Unit 1 , 2

8

100

101

102

1

1.5

2

2.5

3

3.5

m

Cm

in(n

on−

pred

) / C

min

(pre

d)

λ=10−3.5 λ=10−3 λ=10−2.5 λ=10−2

Fig. 7. Performance gain vs. m and � for � � ���, � � ���, � � ������, andCu � �

V. CONCLUSIONS

Mobile users in PCS networks move with wide varietyof mobility patterns, especially in networks with multilayermacro-cellular and micro-cellular infrastructures ([6]). Thelocation-area-based mobility management schemes are not flex-ible enough to adapt to various and varying user traffic andmobility patterns. Furthermore, most of the existing dynamicmobility management schemes assume either random-walk orconstant-velocity fluid-flow as the user mobility model. How-ever, neither of these mobility models can practically representmobiles’ movements in a PCS network. In this paper, we in-troduce a mobility model based on the Gauss-Markov randomprocess, which more realistically captures the various degreesof correlation of a mobile user velocity in time.

With the Gauss-Markov mobility model, we present a novelpredictive distance-based mobility management scheme, whichtakes full advantage of the correlation between a mobile’s cur-rent velocity and location and its future velocity and location.An analytical framework is introduced to evaluate the perfor-mance of the predictive scheme, which allows us to study theeffects of various parameters on the mobility management cost.This cost is then compared with the cost of the regular, non-predictive distance-based scheme obtained from simulations. Inthe span of parameter values under consideration, the perfor-mance improvement by the predictive scheme ranges from unityto a factor of more than 10.

Numerical results suggest that the predictive scheme givesbetter gains in systems with larger � and smaller �; i.e., whenuser mobility pattern is closer to the constant-velocity fluid-flowmodel. It gives the largest gain when � �� �. As an example,with the parameter values as shown in Figure 2, when � � �and � � ���, a cost reduction of 8.5 times is achieved.

When � is small, and � and � are large, the user mobility pat-

tern is close to the random-walk model. In this case, the predic-tive scheme does not perform any better than the non-predictiveone. For example, when � � �, � � ���, and � � �, theperformance gain is close to unity.

When � is not very small relative to sigma (for example, withthe range of parameter values considered in our paper, when� � ��� and � � ���), a large �, which indicates low memorylevel in the user mobility pattern, not necessarily lead to lowperformance gain. This is due to the non-monotonicity of Ck�k

as a function of �. As a point of reference, for � � ����, Cu ������,m � ��, � � �, and � � ���, the performance gain is ��,��, and ���, for � � ����, � � ���, and � � �, respectively.

The parameters other than those associated with the mobilitypattern also affect the performance gain. Numerical results showthat the performance gain is, approximately, an exponentiallydecreasing function of the call arrival rate, a linearly increasingfunction of the cost per location update, and a linearly decreas-ing function of the mobile location inspection period. Thereexists a trade-off between the extra cost due to the predictive lo-cation inspections and the amount of performance gain, whichshould be considered when designing the optimal location in-spection frequency for the proposed predictive system.

REFERENCES

[1] EIA/TIA, “Cellular radio-telecommunications intersystem operation: Au-tomatic roaming,” Technical Report IS-41.3-B, EIA/TIA, 1991

[2] I. F. Akyildiz and J. S. M. Ho, “Dynamic Mobile User Location Update forWireless PCS Networks,” ACM/Baltzer Wireless Networks, vol. 1, no. 2,pp. 187-196, 1995

[3] I. F. Akyildiz, J. S. M. Ho, and Y-B. Lin, “Movement-Based LocationUpdate and Selective Paging for PCS Networks,” IEEE/ACM Transactionson Networking, vol. 4, no. 4, pp. 629-638, August 1996

[4] A. Bar-Noy, I. Kessler, and M. Sidi, “Mobile Users: To Update or Not toUpdate?” ACM/Baltzer Wireless Net., vol. 1, no. 2, pp. 175-185, 1995

[5] T. X. Brown and S. Mohan “Mobility Management for Personal Commu-nication Systems,” IEEE Transactions on Vehicular Technology, vol. 46,no. 2, pp. 269-278, May 1997

[6] A. Ganz, Z. J. Haas, C. M. Krishna, and D. Tang, “On Optimal Design ofMulti-Tier Wireless Cellular Systems,” IEEE Communications Magazine,pp. 88-93, February 1997

[7] A. Gelb, Applied Optimal Estimation, The M.I.T Press, 1974[8] Z. J. Haas and Y.-B. Lin, “On Optimizing the Location Update Costs in

Presence of Database Failures,” ACM/Baltzer Wireless Networks, vol. 4,no. 5, pp. 419-426, 1998

[9] M. Hellebrandt, R. Mathar, and M. Scheibenbogen, “Estimating Positionand Velocity of Mobiles in a Cellular Radio Network,” IEEE Transactionson Vehicular Technology, vol. 46, no. 1, pp. 65-71, February 1997

[10] J. S. M. Ho and I. F. Akyildiz, “Mobile User Location Update and PagingUnder Delay Constraints,” ACM/Baltzer Wireless Networks, vol. 1, no. 4,pp. 413-425, 1995

[11] U. Madhow, M. L. Honig, and K. Steiglitz, “Optimization of WirelessResources for Personal Communications Mobility Tracking,” IEEE/ACMTransactions on Networking, vol. 3, no. 6, pp. 698-707, December 1995

[12] S. Mohan and R. Jain, “Two User Location Strategies for Personal Com-munications Services,” IEEE Personal Comm., First Quarter, 1994

[13] A. Papoulis, Probability, Random Variables, and Stochastic Processes,Third Edition, McGraw-Hill, 1991

[14] C. Rose and R. Yates, “Minimizing the Average Cost of Paging UnderDelay Constraints,” ACM/Baltzer Wireless Networks, vol. 1, no. 2, pp. 211-219, 1995

[15] E. Wong and B. Hajek, Stochastic Processes in Engineering Systems,Springer-Verlag, 1985

[16] H. Xie, S. Tabbane, and D. J. Goodman, “Dynamic Location Area Man-agement and Performance Analysis,” Proceedings of 43rd IEEE VTC, Se-caucus, NJ, pp. 536-539, May 1993

[17] H. Xie and D. J. Goodman, “Mobility Models and Biased Sampling Prob-lem,” IEEE ICUPC, Ottawa, Canada, vol. 2, pp. 803-807, October 1993

Page 246: Mobile Computing Unit 1 , 2

The Static Broadcast Channel

Nadav Shulman and Meir FederDepartment of Electrical Engineering - Systems,Tel-Aviv University, Tel-Aviv, 69978, ISRAEL

February 8, 2000

Abstract

In this paper we present a different view on the broadcast channel thatfits better an asynchronous setting, where each receiver can “listen” to thebroadcasted data at different time intervals. In the scenario we suggest,there is a “static” fixed amount of data, that needs to be transmittedto all receivers. Each receiver wants to minimize the receiving time, andthis way to get the static data at the highest possible rate. We definethe capacity region for this scenario, show a coding theorem, and providea few examples. We finally point out several further work and possibleextensions to this concept.

1 Introduction

The communication scenario considered in the classical broadcast channel [1]assumes the following situation. A single sender transmits information simul-taneously to many receivers. The transmitter and all the receivers are syn-chronously connected along all communication time. A main interesting resultsays that it is possible to transmit at a higher rate than that is achieved bytime-sharing the channel between the receivers. In a typical situation, there isa common information that is needed to be transmitted to all receivers. Underthe classical broadcast channel scenario, a receiver that listen to the transmittedinformation through a better channel can get more information than the otherreceivers. The capacity region in this case defines the highest possible extrainformation rate to the better receiver.

Suppose, however, that we only have a common information and there is noextra information to be transmitted to the better receiver(s). In the classicalbroadcast scenario, the maximum possible rate that this common informationcan be transmitted is determined by the “worst” channel. The better channelshave to “listen” to redundant information. Clearly, there must be a bettersolution.

In this work we define and analyze the static broadcast channel. In thisbroadcasting scenario, the sender has only a fixed common information it has

1

Page 247: Mobile Computing Unit 1 , 2

to transmit to all receivers. We suggest the following definition of the rate- the number of reliably received bits divided by the number of symbols thereceiver has used to retrieve these bits (or, divided by the information gatheringtime). Under this definition, in principle, a receiver that listen through a betterchannel, may gather less channel symbols in order to estimate the transmittedmessage, and by this to increase its rate. In the saved time it can fetch moreinformation from other transmitters. The term static broadcasting is due to thenotion that the core information the transmitter sends is fixed, static, neededfor all transmitter, and does not change.

We define the capacity region of the static broadcast channel, and prove acoding theorem (direct and converse) for it. Interestingly, as explained below,the capacity region may be non-convex, since the notion of time-sharing is notvalid in this asynchronous setting. In addition, we discuss the structure of goodcodes that can attain this capacity.

2 Capacity Region and Coding Theorem

In this work, a broadcast channel is composed of single transmitter and d mem-oryless channels Wi, 1 ≤ i ≤ d, with common input alphabet through which thetransmitter broadcasts to d receivers. A code C for transmitting K = log2 Mbits to all d receivers where the i-th receiver uses ni symbols, is a list of Mcodewords each of length max1≤i≤d ni, an encoding method from a message1 ≤ j ≤ M to a codeword, and d decoding methods, where the i-th de-coder estimates a message j(i) from the first ni symbols at the i-th channeloutput. The rate of this code is (R1, R2, . . . , Rd), where Ri = K/ni. Theerror probabilities associated with this code at the i-th receiver is denotedPe(C, i) = 1/M

∑Mj=1 Pr{j 6= j(i)}, i.e., the average error probability over

all possible transmitted messages.The capacity region is defined as the closure of the set of all possible achiev-

able rates. A rate (R1, R2, . . . , Rd) is said to be achievable if for any ε > 0 thereexists a code C at this rate, such that Pe(CK , i) < ε for all i.

Theorem 1 (R1, R2, . . . , Rd) is in the capacity region iff, for any δ ≥ 0 thereis K and input priors P1, P2, . . . such that for all 1 ≤ i ≤ d

1ni

ni∑t=1

I(Pt; Wi) ≥ Ri − δ (1)

where ni = b KRic, and I(P ; W ) is the mutual information between the input and

output of a DMC channel with input prior P and transition probability matrixW .

The proof of the Theorem is quite straight forward. The converse is essen-tially the standard converse of the channel coding theorem, implemented overthe portion of the received symbols of each receiver. As for the direct, we use

2

Page 248: Mobile Computing Unit 1 , 2

a random code, drawn according to the chosen priors. It is easy to see thatthe standard technique of [2] is generalized for a choice that is independent butnot necessarily identically distributed, and that the error probability can bebounded for each receiver, based on its portion of received data.

Note that in determining the boundaries of the capacity region we look forthe largest rates that satisfy (1). Since I(P ; W ) is a concave function of P , apoint (R1, . . . , Rd) on the boundary, where we assume without loss of generalitythat n1 ≤ n2 ≤ . . . ≤ nd, is attained with a sequence of priors Pt that changein time only after one of the receivers “quit listening”, i.e., Pt is a constant Pi

for all ni−1 + 1 ≤ t ≤ ni.

3 Examples of the Capacity Region

A general method to find the capacity region for static-broadcasting to 2 chan-nels, is as follows. Assume the channels conditional probabilities are W1(y|x),W2(y|x)and the corresponding capacities are C1, C2. As noted before, while both chan-nels listen, we should keep the input prior, P , constant. After one of the receiversgot all the information, it will quit, and in order to maximize the rate to the sec-ond receiver, we shall change the input prior to the one that achieves its capacity.Assuming we are sending K information bits, and that I(P ;W1) > I(P ;W2).Then, n1 the online time of the first receiver, and n2 − n1 the additional timethat the second receiver stays online satisfy:

K = n1I(P ; W1)K = n1I(P ; W2) + (n2 − n1)C2

which yield the effective rates:

R1 =K

n1= I(P ;W1)

R2 =K

n2=

I(P ;W1)C2

C2 + I(P ; W1)− I(P ; W2).

Of course, any point r1 ≤ R1, r2 ≤ R2 is in the capacity region. To get thecomplete capacity region we should take the union of the region above over allpossible values of the input prior, P .

In case where the capacity achieving prior is the same for all channels we canachieve simultaneously their point-to-point capacity. For example, in Figure 3we have drawn the static broadcast capacity region of two BSC channels (noisyand noiseless), compared with the classical broadcast capacity region [3] (underthe assumption that the better receiver also gets the information received bythe poorer receiver). We can easily demonstrate a code for this example. Takeany good systematic code for the noisy channel. The systematic part (theinformation bits are the prefix of each codeword) is sufficient, of course, for thenoiseless channel and impose an effective rate of 1 for that channel. The noisychannel receives the information at a rate determined by the code.

3

Page 249: Mobile Computing Unit 1 , 2

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

2 BSCs

BSC channel, p=0

BS

C c

hannel, p

=0.1

1

Figure 1: Static broadcast capacity region for 2 BSC channels with different

crossover probabilities. Classical broadcast capacity region with dashed line.

The capacity region of the classical broadcast channel is convex since wecan always use time-sharing in order to get any rate-point which lies on a linebetween two achievable rate-points. In our approach, time sharing between twostrategies is not a valid strategy. Hence, the capacity region is not necessarilyconvex. For example, suppose we have the following 2 channels:

W1(y|x) =

1 if y = x and 1 ≤ x ≤ l1 if y = E and l + 1 ≤ x ≤ 2l0 otherwise

W2(y|x) =

1 if y = E and 1 ≤ x ≤ l1 if y = x and l + 1 ≤ x ≤ 2l0 otherwise

We can interpret this channel as talking with two persons, each knows a differentlanguage, with l words. Each person understands nothing in the other languagebut recognizes that what is said is not in his language, and hence considers it asa symbol E. [3]. This broadcast channel yields a non-convex region describedin Figure 3.

4

Page 250: Mobile Computing Unit 1 , 2

4 Discussion and further improvements

In defining the static broadcast channel capacity region we utilized the possi-bility of transmitting the information at a higher rate if the receivers are notforced to be synchronously and simultaneously connected to the transmitter.Actually, the fact that there are various possible definitions of the capacity forthe broadcast channel, depending on the subset of time the data is received hasalso been observed in, e.g., [4]. The setting we propose is novel. Clearly thecapacity region of the classical broadcast channel is contained in our capacityregion, since any scheme for simultaneous transmission is acceptable for ourscenario, although it is not optimal in most cases since the rate can increase byallowing the freedom to choose the portion of the received time interval.

A naive approach for utilizing the possibility to choose the receiving timeinterval is essentially queuing, i.e., the receivers wait in a queue for the trans-mitter to send the information to them. Specifically, the transmit first transmitto one receiver, with effective rate equals to its capacity, then transmit to thesecond channel, and so on. Since the second receiver had to wait for the endof the transmission to the first receiver, the effective rates in this scenario forthese two receivers are

R1 = C1 and R2 =C1C2

C1 + C2.

Clearly, our approach is superior and leads to a higher rate since the receiversare never “on hold”.

A more general situation, which is practically interesting, occurs, say, withIP multicasting in the Internet. In this case we wish to allow the receivers toreceive the data starting from any arbitrary point, and get the information atthe minimal possible time interval. In our setting we restricted the time intervalsof all receivers to begin at the same time point. Our setting can be generalizedto include an arbitrary initial point for each receiver. In this case, however, wecannot allow codes whose structure depends on time. Thus, it is expected thatthe formulas for the capacity region will be the same as (1), but with a constantinput prior that cannot change at specific times.

The codes we have suggested are block codes, with a block length that fitsthe time needed to let the last receiver enough data to decode the information.In some situations, the transmitter may be unaware of the various channelshe broadcasts to. In this case, we have to design a code that translate theinformation bits into, possibly, infinite transmission.

The previous situation may occur when we use the broadcast channel tomodel universal communication to an unknown channel. If the receiver canindicate back to the transmitter that it received the data correctly, our staticbroadcast scenario leads to a communication solution over the unknown (orcompound) channel, that reliably works at a higher rate than that guaranteedby the compound channel capacity.

When the channel is not known at the receiver, it can use universal decoding[5, 6]. Universal decoding may put some constraints on the code design, and

5

Page 251: Mobile Computing Unit 1 , 2

may complicate the receiver, but it is possible without increasing the rate (andeven without affecting the error probability in an exponential matter). Universaldecoding together with possible infinite transmission can be used as a completesolution for universal communication.

These issues of relating our scenario to various practical and theoreticalproblems in broadcast and in communication over unknown channels, includingthe analysis of the error performance in these situations is now under activeresearch [7].

References

[1] Thomas M. Cover. Broadcast channels. IEEE Trans. on Inform. Theory,IT-18:pp.2–14, January 1972.

[2] Robert G. Gallager. Information Theory and Reliable Communication. Wi-ley, 1968.

[3] Thomas M. Cover and Joy A. Thomas. Elements of Information Theory.Wiley, 1991.

[4] Thomas M. Cover. Comment on broadcast channels. IEEE Trans. on In-form. Theory, IT-44:pp.2524–2530, October 1998.

[5] Imre Csiszar and Janos Korner. Information Theory. Academic Press, NewYork, 1981.

[6] Meir Feder and Amos Lapidoth. Universal decoding for channels with mem-ory. IEEE Trans. on Inform. Theory, IT-44:pp.1726–1745, September 1998.

[7] Nadav Shulman. Communication in Unknown Channels. PhD thesis, Tel-Aviv University, in preparation.

6

Page 252: Mobile Computing Unit 1 , 2

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Capacity region of 2 languages with 31 words

Hebrew listner

Japa

nese

list

ner

Figure 2: Static broadcast capacity region of a speaker of 2 languages. Regular

broadcast capacity region with dashed line.

7

Page 253: Mobile Computing Unit 1 , 2

The Cellular IP

The Mobile IP protocol is considered to have limitations in its capabil ity to handlelarge numbers of Mobile Stations moving fast between different radio cells. TheHandover frequency should typically not exceed once a second. However, Mobile IP iswell suited for interconnecting disparate cellular networks effectively providing globalmobility. Resulting from this some micro mobility approaches have been proposedwithin the IETF, which support mobili ty in a well defined area, see figure x.

Figure x. Inter- and intra domain hadovers

The Cellular IP micromobili ty protocol is intended to provide local mobil ity andhandover support. It can interwork with Mobile IP to provide wide area mobilitysupport. Cellular IP is a proposal to the IETF made by researchers from ColumbiaUniversity, New York and Ericsson in 1998 and 1999. Besides the Mobile IP protocolengine, Cellular IP mobile hosts have to run a special Cellular IP protocol engine thatcontrols the mobility support of the network to a mobile host. Four fundamental designprinciples of the protocol are:• location information is stored in distributed data bases,• location information referring to a mobile host is created and updated by regular IP

datagrams originated by the said mobile host• location information is stored as soft state• location management for idle mobile hosts is separated from location management

of hosts that are actively transmitting or receiving data.Hosts connecting to the Internet via a wireless interface are likely to change their pointof access frequently. A mechanism is required that ensures that packets addressed tomoving hosts are successfully delivered with high probability. During a handover,packet losses may occur due to delayed propagation of new location information.These losses should be minimized in order to avoid a degradation of service quality ashandover become more frequent. Cellular IP provides mobility and handover supportfor frequently moving hosts. It is intended to be used on a local level, for instance in acampus or metropoli tan area network. Cellular IP can interwork with Mobile IP tosupport wide area mobility, that is, mobil ity between Cellular IP Networks.A Cellular IP network, see figure x, comprises a gateway router that connects theCellular IP network to the Internet as well as several Cellular IP nodes that are

Internet, Mobile IP

Interdomain handover

Wireless access networkMicromobil ity

Intradomain handovers

Gateway foreign agent

Page 254: Mobile Computing Unit 1 , 2

responsible for the Cellular IP routing and mobile hosts which support the Cellular IPprotocol. A mobile host is connected to a wireless access point (base station), to whichit relays the packets it wants to transmit and from which it receives the packetsdestined for it. Each Cellular IP node has an uplink neighbour to which it relays thepackets originating from the mobile hosts and one or more downlink neighbours towhich it relays the packets destined for a mobile host.

Figure x. The Cellular IP network

After power up a mobile host has to register to the Cellular IP network, which meansthat it has to set up a routing path from the gateway router to its current attachmentpoint. This is done in a reverse manner by sending a route update message from themobile host to the gateway router. The route update message is received by the basestation and forwarded hop-by-hop following the uplink neighbours of each Cellular IPnode towards the gateway router. Each Cellular IP node maintains a route cache inwhich it holds host based routing entries. Whenever a route update message passes aCellular IP node, a routing entry for the related mobile host is written in the cache. Theso called host based entries map a mobile host’s IP address to the interface from whichthe packet arrived at the node. When the route update message arrives at the gatewayrouter, it is dropped after the gateway router added a routing entry to its route cache.After that, the chain of cached host based routing entries referring to a specific mobilehost constitutes a reverse path for packets addressed for that mobile host. The routingentries in the Cellular IP nodes are soft state. This means, after a certain expirationtime they are not valid any more. This is necessary since due to a link loss a mobilehost might not be able to tear down its routing entries before leaving the network. In

Page 255: Mobile Computing Unit 1 , 2

order not to lose its routing path, a mobile host has to refresh its routing entriesperiodically. In Cellular IP this is done by a regular data packet or by sending a routeupdate message if the mobile host has no data to transmit.Mobile hosts that are not actively transmitting or receiving data (idle state) but want tostay reachable, have the opportunity to maintain paging cache entries. A mobile hostwith installed route cache entries is said to be in active state. Paging caches are notnecessarily maintained on each Cellular IP node and have longer timeout values. OnCellular IP nodes, where both a route and a paging cache are maintained, packetforwarding in downlink direction is done in the same way for routing and paging withpriority to the route cache entries. If a Cellular IP node, that does not maintain apaging cache, receives a downlink packet for a mobile host for which it has no routingentry in its route cache, it broadcasts the packet to all i ts downlink neighbours. By thismechanism groups of several, usually adjacent base stations are built in which idlemobile hosts are searched when a packet has to be delivered to them. Those groups ofbase stations are called paging areas.Cellular IP provides two handover mechanisms: A hard handover and a semi-softhandover mechanism. For a hard handover, the wireless interface of a mobile hostchanges from one base station to another at once. For the semi-soft handover themobile host switches to the new base station, transmits a route update message with aflag indicating the semi-soft handover and returns immediately to the old base stationin order to listen for packets destined to it. The route update message reconfigures theroute caches on the way to the gateway router as usually, except for the route cache onthe cross-over node, where the new path branches off fr om the old path. In that nodedownlink packets are duplicated and sent along both paths until a new route updatemessage.

Page 256: Mobile Computing Unit 1 , 2

TDK

In our Student Research Society Project Report we gave an overview of three micromobility protocols. These protocols are the Cellular IP, the HAWAII (Handoff-AwareWireless Access Internet Infrastructure), and the Hierarchical mobile IP. We studiedthe performance of these protocols through a numerical example based on thefollowing parameters:• packet delays• number of mobilit y related messages• packet lossWe calculated the effect of the number of mobile hosts and their velocity to theparameters above. After that we simulated the three protocols using the Columbia IPMicro-Mobility Suite, which is based on the NS-2 toolkit.

By the numerical calculation we modelled a domain with predefined configurationparameters. The domain is in the form of a tree with three levels: at the highest levelthere is a single domain router; at the second level there are seven intermediate routers;at the third and lowest level, there are 140 base stations. We also assume that thecoverage area of a base station is a square with a given perimeter. For thisconfiguration, we compute the rate of mobil ity related messages for three differentapproaches:• Mobile-IP approach where foreign agents are present at each base station and are

served by a home agent.• the HAWAII approach where the home agent is at the domain root router.• and the CIP approach where the gateway is the foreign agent.The number of mobil ity related messages in HAWAII was less than in CIP, and in CIPwas less than in Mobile IP. The results are shown in table x.

MIP home agent HAWAII domainroot router

CIP gateway

Mip registration 573.4352 48.46412 48.46412Mip renewals 127.8095 12.78095 12.78095HAWAII update 128.224HAWAII refresh 51.1238CIP route-update 344.0611CIP paging-update 81.07037Total 701.2447 240.5929 486.3766

Table x. Number of mobility related messages

Page 257: Mobile Computing Unit 1 , 2

Our own Simulation

At the end of the semester we began to develop our own simulation. We chose theOmNet++ Discrete Event Simulation System. We will implement the two mainmicromobil ity protocols: Cellular IP and HAWAII . We needed to create a networktopology using the NED (Network Description) language. Our test domain consist of agateway router, five additional routers and six base stations. In the network there is amocromobility domain, an Internet host modelling the whole network outside thedomain, and five mobile hosts. Between the mobiles and base stations we use an "Air"object modell ing the radio interface and handle the movement of mobiles. The testdomain topology can be seen in figure x.

Figure x. The test domain

The OmNet++ environment provides a Tcl/Tk based graphical animation tool forviewing network simulation traces. It supports topology layout, packet levelanimation, and various data inspection tools. We can see the implemented domain andnetwrok using this tool in figure x.

Gateway router

Router

Router RouterRouter

Router

BS BS BS BS BS BS

Page 258: Mobile Computing Unit 1 , 2
Page 259: Mobile Computing Unit 1 , 2

We divided the area covered by the six base stations into two paging areas, see figurex.

Figure x. The paging areas.

However, further work has to be undertaken in order to complete the architecture andprotocol implementation. We must realize the functions of the objects in our network.

4

5

3

1

2

0x

y

Page 261: Mobile Computing Unit 1 , 2
Page 262: Mobile Computing Unit 1 , 2
Page 263: Mobile Computing Unit 1 , 2
Page 264: Mobile Computing Unit 1 , 2
Page 265: Mobile Computing Unit 1 , 2
Page 266: Mobile Computing Unit 1 , 2
Page 267: Mobile Computing Unit 1 , 2
Page 268: Mobile Computing Unit 1 , 2
Page 269: Mobile Computing Unit 1 , 2
Page 270: Mobile Computing Unit 1 , 2
Page 271: Mobile Computing Unit 1 , 2
Page 272: Mobile Computing Unit 1 , 2
Page 273: Mobile Computing Unit 1 , 2
Page 274: Mobile Computing Unit 1 , 2
Page 275: Mobile Computing Unit 1 , 2
Page 276: Mobile Computing Unit 1 , 2