Mobile Computing Unit 1, 2
Mobile Computing Unit 1, 2
Computing
Fundamental Challenges in Mobile Computing
M. Satyanarayanan
School of Computer Science
Carnegie Mellon University
Abstract
This 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 mobile
computing, 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 the
research opportunities in five important topics relevant to mobile computing: caching metrics,
semantic callbacks and validators, resource revocation, analysis of adaptation, and global
estimation from local observations.
2
exploited to alleviate the limitations of disconnected 3.1. Caching Metrics
operation [12]. The mechanisms needed to Caching plays a key role in mobile computing because of
accomplish this include adaptive transport protocols, its ability to alleviate the performance and availability
a rapid cache validation mechanism, a trickle limitations of weakly-connected and disconnected
reintegration mechanism for propagating updates, and operation. But evaluating alternative caching strategies for
model-based cache miss handling for usability.
mobile computing is problematic.
Isolation-only transactions
In the context of Coda, a new abstraction called Today, the only metric of cache quality is the miss ratio.
isolation-only transaction has been developed to cope The underlying assumption of this metric is that all cache
with the detection and handling of read-write conflicts misses are equivalent (that is, all cache misses exact
during disconnected operation [9]. This abstraction roughly the same penalty from the user). This assumption
selectively incorporates concepts from database is valid when the cache and primary copies are strongly
transactions, while making minimal demands of connected, because the performance penalty resulting from
resource-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
Server replication to be valid during disconnected or weakly-connected
Coda has shown how server replication can be used to operation.
complement disconnected operation [15]. Although
this is not particularly relevant to mobility, it is an The miss ratio also fails to take into account the timing of
important result in distributed systems because it misses. For example, a user may react differently to a
clarifies the relationship between first-class (i.e., cache miss occurring within the first few minutes of
server) replicas and second-class replicas (i.e., client disconnection than to one occurring near the end of the
caches). It also represents one of the first disconnection. As another example, the periodic spin-
demonstrations of optimistic replication applied to a down of disks to save power in mobile computers makes it
distributed 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 two
computing. An preliminary prototype of Odyssey has been important criteria. First, they should be consistent with
built [14, 18], and a more complete prototype is under qualitative perceptions of performance and availability
development. The early evidence is promising, but it is far experienced by users in mobile computing. Second, they
too early for definitive results. should be cheap and easy to monitor. The challenge is to
develop such metrics and demonstrate their applicability to
3. Fertile Topics for Exploration mobile computing. Initial work toward this end is being
done by Ebling [1].
We now turn to the discussion of promising research
topics in mobile computing. By its very nature, this section 3.1.1. Some Open Questions
of the paper is highly speculative and will raise far more • What is an appropriate set of caching metrics for
questions than it answers. Further, this is a selective list: it mobile computing?
is certainly not intended to be complete. Rather, my goal is • Under what circumstances does one use each
to 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 alternative
followed two guidelines. First, these problems are more
metrics for caching algorithms?
likely to be solved by rigor and analysis than by
implementation and experience. Second, each of these 3.2. Semantic Callbacks and Validators
problems is real, not contrived. Good solutions and Preserving cache coherence under conditions of weak
insights to these problems will strongly impact the mobile connectivity can be expensive. Large communication
computing systems of the future. latency increases the cost of validation of cached objects.
Each topic is presented in two parts: a brief discussion Intermittent failures increase the frequency of validation,
that lays out the problem space of the topic, followed by a since it must be performed each time communication is
sample of open questions pertaining to it. Again, my aim restored. A lazy approach that only validates on demand
in posing these questions is not to be exhaustive but to could reduce validation frequency; but this approach would
offer food for thought. worsen consistency because it increases the likelihood of
stale objects being accessed while disconnected. The cost
of cache coherence is exacerbated in systems like Coda that
3
use anticipatory caching for availability, because the inexpensive validator for cached data satisfying some
number 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 distributed
size).
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 30
Clients and servers maintain version information on milliseconds. During this time, a client with a 100 MIP
individual objects as well as entire subtrees of them. Rapid processor can execute over 3 million instructions! Since
cache validation is possible by comparing version stamps processor speed can be expected to increase over time, the
on the subtrees. Once established, validity can be lost computational opportunity represented by this scenario
maintained 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 of
validation. It preserves correctness while dramatically
RPC will become increasingly untenable. Eventually, very
reducing the cost of cache coherence under conditions of
wide-area distributed systems will have to be structured
weak connectivity. Usage measurements from Coda
around an asynchronous model. At what scale and
confirm that these potential gains are indeed achievable in
timeframe this shift will occur depends on two factors: the
practice [12].
substantially simpler design, implementation, and
The 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) of
and applications in the following way: the asynchronous model.
• a client caches data satisfying some predicate P One promising asynchronous model is obtained by
from a server. combining the idea of cheap but conservative validation
• the server remembers a predicate Q that is much with the style of programming characterized by optimistic
cheaper to compute, and possesses the property Q concurrency control [8]. The resulting approach bears
implies P. In other words, as long as Q is true, the some resemblance to the use of hints in distributed
cached 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
about that data. Consider remote control of a robot explorer on the
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 may
becomes false, the server notifies the client that its arise on Mars, the robot must be capable of reacting on its
cached data might be stale.
own. At the same time, the exploration is to be directed
• Prior to its next access, the client must contact the live by a human controller on earth — a classic command
server 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 which
interpretation of P and Q depends on the specifics of the communication latency is large enough that a synchronous
data and application. For example, P would be an SQL design paradigm will not work. The knowledge of the
select statement if one is caching data from a relational robot’s status will always be obsolete on earth. But, since
database. Or it could be a piece of code that performs a emergencies are rare, this knowledge will usually differ
pattern match for a particular individual’s face from a from current reality in one of two benign ways. Either the
database of images. Q must conform to P: a simpler differences are in attributes irrelevant to the task at hand, or
select statement in the first case, and a piece of code the differences can be predicted with adequate accuracy by
that performs a much less accurate pattern match in the methods such as dead reckoning. Suppose the robot’s state
second case. In Coda, P corresponds to the version number is P, as characterized in a transmission to earth. Based on
of an object being equal to a specific value (x), while Q some properties, Q, of this state, a command is issued to
corresponds to the version number of the encapsulating the robot. For this command to be meaningful when it
volume being unchanged since the last time the version reaches the robot, Q must still be true. This can be verified
number 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 be
Semantic validation can be extended to domains beyond
feasible, 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 be
timing difference between local and remote actions is too answered regarding this approach. But it does offer an
large to ignore even when communication occurs at the intriguing way of combining correctness with performance
speed of light. The predicate Q in such cases serves as an in very wide-area distributed systems.
4
3.2.1. Some Open Questions • What strategies does one use if multiple resources
• Under what circumstances are semantic callbacks must be simultaneously revoked?
most useful? When are they not useful? • How does one distinguish between resources whose
• What forms can P and Q take for data types and revocation is easy to recover from and those it is
applications in common use? How does one expensive or impossible to recover from?
estimate their relative costs in those cases? • How does one handle deadlocks during revocation?
• Can P and Q really be arbitrary code? Are there
restrictions necessary for efficiency and 3.4. Analysis of Adaptation
practicality? How does one compare the adaptive capabilities of two
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 as
of P and Q? Is the tradeoff space discrete or battery power), agility should be viewed as a composite
continuous? Can this tradeoff be made adaptive? metric.
3.3. Algorithms for Resource Revocation A system that is highly agile may suffer from instability.
Application-aware adaptation complicates the problem of Such a system consumes almost all its resources reacting to
resource management. In principle, the system owns all minor perturbations, hence performing little useful
resources. At any time, it may revoke resources that it has computation. The ideal mobile client is obviously one that
temporarily delegated to an applicaton. Alas, reality is is highly agile but very stable with respect to all variables
never that simple. A variety of factors complicate the of interest.
problem. Control theory is a domain that might have useful
First, some applications are more important than others. insights to offer in refining these ideas and quantifying
Any acceptable revocation strategy must be sensitive to them. Historically, control theory has focused on hardware
these differences. Second, the cost of revoking the same systems. But there is no conceptual reason why it cannot
resource may be different to different applications. For be extended to software systems. Only careful
example, reducing the bandwidth available to one investigation can tell, of course, whether the relevance is
application may result in its substantially increasing the direct and useful or merely superficial.
amount of processing it does to compensate. A similar 3.4.1. Some open questions
reduction in bandwidth for another application may result
• What are the right metrics of agility?
in a much smaller increase in processing. A good
revocation strategy must take into account these differential • Are there systematic techniques to improve the
impacts. Third, there may be dependencies between agility of a system?
processes that should be taken into account during • How does one decide when a mobile system is
revocation. For example, two processes may have a "agile enough"?
producer-consumer relationship. Revoking resources from
one process may cause the other to stall. More complex • What are the right metrics of system stability?
dependencies involving multiple processes are also • Can one develop design guidelines to ensure
possible. Unless revocation takes these dependencies into stability?
account, hazards such as deadlocks may occur.
• Can one analytically derive the agility and stability
Revocation of resources from applications is not common properties of an adaptive system without building it
in current systems. Classical operating systems research first?
has focused on resource allocation issues rather than
resource revocation. As a result there is currently little 3.5. Global Estimation from Local Observations
codified knowledge about safe and efficient techniques for Adaptation requires a mobile client to sense changes in
revocation. This deficiency will have to be remedied as its environment, make inferences about the cause of these
application-aware adaptation becomes more widely used. changes, and then react appropriately. These imply the
ability to make global estimates based on local
3.3.1. Some open questions observations.
• How does one formulate the resource revocation
problem? To detect changes, the client must rely on local
observations. For example, it can measure quantities such
• How does one characterize the differential impact of as local signal strength, packet rate, average round-trip
revocation on different applications? times, and dispersion in round-trip times. But interpreting
5
these observations is nontrivial. A change in a given evolution of biological species, and its influence on the
quantity 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 his
overload on a distant server. But it will also drop when observation applies equally well to a much broader class of
there 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 systems
adaptation performed by the client may be ineffective or in ways that we can only dimly perceive at the present
counterproductive. 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 is
especially challenging in the absence of out-of-band Acknowledgements
communication, because the client cannot use an This paper is the result of many years of interaction and
alternative 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,
• Are there systematic ways to do global estimation Tetsuro Muranaga, Bob Baron, Dushyanth Narayanan, and Eric
from local estimates? Tilton.
• Can one bound the error in global estimates? I wish to thank Vassos Hadzilacos and Yoram Moses, the
program chairmen of the Fourteenth and Fifteenth ACM
• What is the relationship of global estimation to Symposia on Principles of Distributed Computing respectively,
agility of adaptation? Can one quantify this for giving me the opportunity to present these thoughts as an
relationship? invited speaker at PODC ’95 and as an invited paper in the
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 the
estimation? For example, do closely-synchronized, presentation of the paper.
low-drift clocks on clients and servers help?
• Can one quantify the benefits of out-of-band References
channels? For example, how much does the
presence of a low-latency, low-bandwidth channel [1] Ebling, M.R.
Evaluating and Improving the Effectiveness of Caching for
help with estimates on a parallel high-latency, high- Availability.
bandwidth channel? PhD thesis, Department of Computer Science, Carnegie
Mellon 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,
this tension, making it necessary for mobile clients to 1988.
tolerate 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
uncertainty, adaptation insulates users from the vagaries of [4] Kistler, J.J.
Disconnected Operation in a Distributed File System.
mobile environments. Our research is exploring two
PhD thesis, Department of Computer Science, Carnegie
different approaches to adaptation: application-transparent Mellon University, May, 1993.
and application-aware. Our experience with Coda confirms
that application-transparent adaptation is indeed viable and [5] Kumar, P., Satyanarayanan, M.
Log-Based Directory Resolution in the Coda File System.
effective for a broad range of important applications. In In Proceedings of the Second International Conference on
circumstances where it is inadequate, our initial experience Parallel and Distributed Information Systems. San
with Odyssey suggests that application-aware adaptation is Diego, CA, January, 1993.
the appropriate strategy. [6] Kumar, P.
In closing, it is worth speculating on the long-term Mitigating the Effects of Optimistic Replication in a
Distributed File System.
impact of mobility on distributed systems. In his book
PhD thesis, School of Computer Science, Carnegie Mellon
Mind Children, my colleague Hans Moravec draws an University, December, 1994.
analogy between the seminal role of mobility in the
6
[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 Mountain
Resort, 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
CS 294-7: Challenges of Mobile
Computing
1
Natural Evolution
of Computing
More
Flexible Mobile Computing
Resource
Usage LANs + WSs
Networking
Timesharing
Batch
Single User
OS
3
Classes of
Mobile 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
4
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)
5
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
6
Heterogeneous
“Wireless Overlay” Networks
Regional-Area
Remote Clinics
Metropolitan-Area
Emergency Dispatch
In-Building
Hospital
Operating Room
Emergency Room
7
Wireless Communications
Bandwidths and Latencies
Type of Bandwidth Latency Mobility Typ Video Typ Audio
Network Performance Performance
In-Building >> 1 Mbps < 10 ms Pedestrian 2-Way ’ractive High Quality
Comm’l RF: 2 Mbps Full Frame Rate 16-bit Samples
Research IR: 50 Mbps
(Comp) 22 Khz Rate
Campus-Area ≈ 64 Kbps ≈ 100 ms Pedestrian Med. Quality Med. Quality
Packet Relay Slow Scan Reduced Rate
Network
Wide-Area 19.2 Kbps > 100 ms Vehicular Freeze Frame Asynchronous
“Voice Mail”
Regional-Area 4.8 kbps–10+ Mbps > 100 ms Vehicular Seconds/Frame Asynchronous
(LEO/DBS/VSAT) (asymmetric) Stationary Freeze Frame “Voice Mail”
• 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
9
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
10
Mobility: IP Routing
Source Destination
Berkeley CS
Internet IPhome
Sockets
TCP/UDP
IP
Link Layer
Physical Layer
11
Mobility: Mobile IP
Correspondent
Host Berkeley CS
Home
Agent
Route
Optimization Internet Home Network
Sockets
Stanford
TCP/UDP CS Foreign
Visited Agent
Mobile IP
Network
Link Layer
Physical Layer
Mobile Host
12
Mobility
• 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
14
Portability Issues
15
Battery Technology
200
Watt-hours per kg
150
Li Poly
100
Li Ion
Dell Latitude
50
NiCd NiMH Apple
Lighter 0
0 50 100 150 200 250 300 Powerbooks
Watt-hours per liter
• Other Battery Types: Smaller
– Lead Acid
– Nickel Zinc
– Rechargeable Alkaline-Manganese
– Zinc Air
16
Some PDA Product Parameters
Batteries Display
Mem Size MHz Proc # Hrs Type lbs. Pixels sq in
Armstad Pen 128 KBytes 20 Z-80 40 3 AAs 0.9 240x320 10.4
Pad PDA 600
Apple Newton 640 KBytes 20 ARM 6-8 4 AAAs 0.9 240x336 11.2
Message Pad
Casio Z-7000 1 MByte 7.4 8086 100 3 AAs 1.0 320x256 12.4
17
Some PDA Product Parameters
Batteries Display
Mem Size MHz Proc # Hrs Type lbs. Pixels sq in
Tandy Z-550 1 MByte 8 8086 100 3 AAs 1.0 320x256 12.4
Zoomer
AT&T EO 440 4-12 MBytes 20 Hobbit 1-6 NiCd 2.2 640x480 25.7
Pers Comm
18
Typical Laptop Power
Consumption
Base System (2 MB, 25 MHz) 3.650 W 1.8 in PCMCIA hard drive 0.7-0.3 W
Base System (2 MB, 10 MHz) 3.150 Cell telephone (active) 5.400
Base System (2 MB, 5 MHz) 2.800 Cell telephone (inactive) 0.300
Screen backlight 1.425 Infrared network 0.250
Hard drive motor 1.100 PCMCIA modem, 14.4 kbps 1.365
Math co-processor 0.650 PCMCIA modem, 9.6 kbps 0.625
Floppy drive 0.500 PCMCIA modem, 2.4 kbps 0.565
External keyboard 0.490 GPS receiver 0.670
LCD screen 0.315
Hard drive active 0.125
IC card slot 0.100
Additional Mem (per MB) 0.050
Parallel port 0.035
Serial port 0.030
19
Laptop Power Consumption
20
InfoPad Power Consumption
.075 W 1.25 W
3.0 W .175W
Custom Chips (5V)
µProc + PL
Mono LCD
Color LCD
Pen Digitizer
Up/Down Radios
2.1 W 2.4 W
21
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
22
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
23
Single Carrier FDMA
Overview of SC-FDMA
Overview of SC-FDMA
3GPP Evolution
LTE R8
HSPA+ R7
HSUPA R6
HSDPA R5
UMTS/WCDMA R99
• ARQ within RLC sublayer and Hybrid ARQ within MAC sublayer.
WCDMA 5 MHz
3G
cdma2000 5 MHz
2
0.8
1.5
0.6
1
0.4
0.2 0.5
0 0
0 1 2 3 4 5 6 0 1 2 3 4 5
Time [µsec] Frequency [MHz]
• 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.
FDE
- cont.
Time domain y = h∗ x
Channel ∴ x = h −1 * y
Fourier
x h y transform
Y =H⋅X
−1
Frequency domain ∴ X = H ⋅Y
FDE
- cont.
CP Symbols
FDE
- cont.
• 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
SC/FDE
Add N- N-
{ xn } CP/ Channel
Remove
CP
point Equalization point Detect
PS DFT IDFT
OFDM
{ xn }
N- Add N-
Remove
point CP/ Channel point Equalization Detect
CP
IDFT PS DFT
SC/FDE
- cont.
SC/FDE
- cont.
• 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.
• Reference
– F. Adachi et al., “Broadband CDMA Techniques,” IEEE Wireless
Comm., vol. 12, no. 2, Apr. 2005, pp. 8-18.
Add M- M-
{ xn } Spreading CP/ Channel
Remove
CP
point Equalization point
De-
spreading
Detect
PS DFT IDFT
Overview of SC-FDMA
N- M-
P-to-S
S-to-P
Channel
N- Subcarrier M-
S-to-P
P-to-S
Remove RF
Detect point De-mapping/ point
CP / ADC
IDFT Equalization DFT
*N<M
SC-FDMA: +
* S-to-P: Serial-to-Parallel
* P-to-S: Parallel-to-Serial OFDMA:
Why “Single
Single Carrier” FDMA”?
FDMA ?
Carrier “FDMA
N- M-
P-to-S
Subcarrier Add CP DAC
point point
Mapping / PS / RF
DFT IDFT
Subcarrier Mapping
X0 Xɶ 0 Xɶ 0
Zeros
Zeros X0
X1 X1
Zeros
X2
X N −1
X N −1 Zeros
Zeros
Xɶ M −1 Xɶ M −1
Distributed Localized
Single Carrier FDMA | Hyung G. Myung 19
Overview of SC-FDMA
Subcarrier Mapping
- cont.
Terminal 1
Terminal 2
Terminal 3
subcarriers subcarriers
Subcarrier Mapping
- cont.
{ xn } : x0 x1 x2 x3
2π
N −1 − j nk
DFT X k = ∑ xn e N , N = 4
n =0
{X k } : X0 X1 X2 X3
{~
X l , IFDMA } X0 0 0 X1 0 0 X2 0 0 X3 0 0
{X~ l , DFDMA } X0 0 X1 0 X2 0 X3 0 0 0 0 0
{X }
Current
~ 0 0 0 0 0 0 0 0 implementation
X0 X1 X2 X3
l , LFDMA in 3GPP LTE
frequency
{ xn } x0 x1 x2 x3
{Q ⋅ xɶ m, IFDMA } x0 x1 x2 x3 x0 x1 x2 x3 x0 x1 x2 x3
{Q ⋅ xɶ m , LFDMA } x0 * * x1 * * x2 * * x3 * *
{Q ⋅ xɶm , DFDMA } x0 * * x2 * * x0 * * x2 * *
time
3
* = ∑ ck ,m ⋅ xk , ck ,m : complex weight
k =0
Amplitude of SC-
SC-FDMA Symbols
0.5
IFDMA
LFDMA
0.4 DFDMA
Amplitude [linear]
0.3
0.2
0.1
QPSK
0
10 20 30 40 50 60
Symbol
SC-
SC-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.
SC-
SC-FDMA and OFDMA
- cont.
OFDMA symbol
SC-FDMA symbols*
time
* Bandwidth spreading factor : 4
SC-
SC-FDMA and OFDMA
- cont.
Equalizer Detect
Subcarrier Equalizer Detect
OFDMA DFT De-
mapping
Equalizer Detect
Subcarrier
SC-FDMA DFT De- Equalizer IDFT Detect
mapping
SC-
SC-FDMA and DS-
DS-CDMA
SC-
SC-FDMA and DS-
DS-CDMA
- cont.
• Conventional spreading
x0 x1 x2 x3
Data Sequence
×
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Signature Sequence
x0 x0 x0 x0 x1 x1 x1 x1 x2 x2 x2 x2 x3 x3 x3 x3
time
SC-
SC-FDMA and DS-
DS-CDMA
- cont.
• Exchanged spreading
1 1 1 1
Signature Sequence
×
x0 x1 x2 x3 x0 x1 x2 x3 x0 x1 x2 x3 x0 x1 x2 x3
Data Sequence
IFDMA
x0 x1 x2 x3 x0 x1 x2 x3 x0 x1 x2 x3 x0 x1 x2 x3
time
*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
Single Carrier FDMA | Hyung G. Myung 29
Overview of SC-FDMA
SC-
SC-FDMA and Other Schemes
DS-CDMA
* DFT-based FDE
* Block-based
OFDMA /FDE
processing & CP
SC-
SC-FDMA with Code Spreading
N- M- Add
Subcarrier
point point CP/
Mapping
DFT IDFT PS
De-
Spreading SC-FDMA Modulation Channel SC-FDMA Demodulation Detect
spreading
M- Subcarrier De- N-
Remove
point mapping/ point
CP
DFT Equalization IDFT
SC-
SC-FDMA MIMO
Spatial Mapping
MIMO
Channel
Overview of SC-FDMA
#0 #1 #2 #3 #18 #19
One half-frame = 5 ms
One subframe = 1 ms
Slot #0 #19
N symb
Resource block
= N symb × N scRB resource elements
Subcarrier (frequency)
Length of CP
Configuration Nsymb
Normal CP 7
Extended CP 6
Extended CP (∆f = 7.5 kHz)† 3
† Only in downlink
Channel
1.4 3 5 10 15 20
bandwidth [MHz]
Number of
6 15 25 50 75 100
resource blocks (NRB)
Number of
72 180 300 600 900 1200
occupied subcarriers
IDFT(Tx)/DFT(Rx)
128 256 512 1024 1536 2048
size
*3GPP TS 36.104
Zeros
DL or UL symbol
Resource
block
frequency
N scRB N RB × N scRB M
= 12 = 300 = 512
(180 kHz) (4.5 MHz) (7.68 MHz)
Zeros
* 5 MHz system with
frame structure type 1
time
Single Carrier FDMA | Hyung G. Myung 40
SC-FDMA Implementation in 3GPP LTE
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)
UL Resource Block
*PUSCH with normal CP
Resource Reference
block (RB) symbols (RS)
Frequency
Subcarrier
Time
Scrambling
Modulation mapping
SC-FDMA
Resource element mapping
modulation
SC-
SC-FDMA Modulation in LTE UL
Localized mapping
Subcarrier with an option of
Mapping adaptive scheduling
or random hopping.
M-1
Zeros
subcarrier
Serial- Parallel
{ x0 , x1 … , xN −1} to-
N- M-
-to- { xɶ0 , xɶ1 … , xɶM −1}
DFT IDFT
Parallel Serial
One SC-FDMA
symbol
Zeros
0
UL Reference Signal
• Two types of UL RS
– Demodulation (DM) RS ⇒ Narrowband.
– Sounding RS: Used for UL resource scheduling ⇒ Broadband.
− j 2π r k 2 +qk , k =0,1,2,⋯, L −1; for L even * r is any integer relatively prime
e L 2 with L and q is any integer.
ak =
r k ( k +1)
− j 2π
L 2
+ qk
, k = 0,1,2,⋯, L −1; for L odd
e
B. M. Popovic, “Generalized Chirp-like Polyphase Sequences with Optimal Correlation Properties,”
IEEE Trans. Info. Theory, vol. 38, Jul. 1992, pp. 1406-1409.
UL RS Multiplexing
User 1
User 2
User 3
subcarriers subcarriers
UL RS Multiplexing
- cont.
• 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.
Overview of SC-FDMA
PAPR Characteristics
CCDF of PAPR: QPSK, Rolloff = 0.22, N = 512, N = 128 CCDF of PAPR: 16-QAM, Rolloff = 0.22, N = 512, N = 128
fft occupied fft occupied
0 0
10 10
OFDMA OFDMA
-1 -1
10 10
Pr(PAPR>PAPR0)
Pr(PAPR>PAPR0)
-2 IFDMA -2 IFDMA
10 10
DFDMA DFDMA
-3 -3
LFDMA
10 10
Dotted lines: no PS Dotted lines: no PS
Dashed lines: RRC PS Dashed lines: RRC PS
Solid lines: RC PS LFDMA Solid lines: RC PS
-4 -4
10 10
0 2 4 6 8 10 12 0 2 4 6 8 10 12
PAPR [dB] PAPR [dB]
0 0
* Monte Carlo simulations (Number of iterations: > 104) *H. G. Myung, J. Lim, and D. J. Goodman, "Peak-to-
* Time domain pulse shaping with 8-times oversampling Average Power Ratio of Single Carrier FDMA Signals with
* Nfft: number of total subcarriers = FFT size Pulse Shaping," IEEE PIMRC ’06, Helsinki, Finland, Sep.
* Noccupied: number of occupied subcarriers = data block size 2006
* RC: raised-cosine, RRC: root raised-cosine
* Rolloff factor of 0.22
PAPR Characteristics
- cont.
-2
10
α=1
α=0.8 α=0.2
α=0.6
-3
10 α=0.4 α=0
Solid lines: without pulse shaping
-4 Dotted lines: with pulse shaping
10
0 2 4 6 8 10
PAPR [dB]
0
*H. G. Myung, J. Lim, and D. J. Goodman, "Peak-to-
*α: rolloff factor of raised cosine pulse shaping filter Average Power Ratio of Single Carrier FDMA Signals with
Pulse Shaping," IEEE PIMRC ’06, Helsinki, Finland, Sep.
2006
PAPR of SC-
SC-FDMA MIMO
0
10
TxBF
SM (no avr. & no quant.)
-1
10
Pr(PAPR>PAPR )
0
-2
10
SFBC (QPSK)
SFBC (16-QAM)
-3
10
-4 TxBF
10
(avr. & quant.)
4 6 8 10 12
PAPR [dB]
0
*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
Single Carrier FDMA | Hyung G. Myung 51
Introduction and Background
Overview of SC-FDMA
Channel-
Channel-Dependent Scheduling (CDS)
Channel gain
• Channel-dependent scheduling
User 2
– Assign subcarriers to a user in
excellent channel condition.
CDS
- cont.
30 30
25 25
20 20
15 15
10 10
5 5
4 8 16 32 64 128 4 8 16 32 64 128
Number of users Number of users
*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
Uplink SC-
SC-FDMA
with Adaptive Modulation and CDS
Mobile terminals Base station
User K
Channel K
User 2
User 1
ConstellationM
Channel 2
Subcarrier
Mapping
apping
CP /
DFT IDFT
PS
Channel 1 SC-FDMA Receiver
Resource Scheduler
Data flow
Control signal flow
Simulation Results
10 10
8 8
6 6
4 4
2 2
0 1 2 3 4 5 0 1 2 3 4 5
Feedback delay [ms] Feedback delay [ms]
Simulation Results
- cont.
IFDMA: Static
14
IFDMA: CDS
12
10
2
0 20 (37) 40 (74) 60 (111) 80 (148)
Mobile speed [km/h] (Doppler [Hz])
*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.
Overview of SC-FDMA
• LTE Spec
– http://www.3gpp.org/ftp/Specs/html-info/36-series.htm
Final Word
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.
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.
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.
Table 1 – Transport Technologies [4]
Meanwhile, developers are focusing on the much-hyped third generation (3G) of wireless systems.
Interface
for Internetworking
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
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
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.
[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
Location Management in Wireless
Cellular Networks
Travis Keshav -- traviskeshav@hotmail.com
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.
Table Of Contents
1. Introduction
2. Static Location Management
o 2.1 Static Location Update
o 2.2 Static Location Areas
o 2.3 Static Current Standards/Implementation
3. Location Management Parameters/Analysis
o 3.1 Paging
o 3.2 User Mobility
4. Dynamic Location Management
o 4.1 Dynamic Location Update
o 4.2 Dynamic Location Areas
o 4.3 User Characterization
o 4.4 Cost Analysis
5. Dynamic LM Analysis and Developments
o 5.1 Static/Dynamic Location Management Comparison
o 5.2 Further Cowling Theories
o 5.3 Hand-off Velocity Prediction Location Management
o 5.4 Set-Covering Based Location Area Planning
o 5.5 Triple Layer Location Management
o 5.6 Additional Dynamic LM Theories
6. Future LM Developments and E911
o 6.1 Location Tracking Evolution
o 6.2 Location Management in 3G
o 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.
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.
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
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.
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
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.1 Paging
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.
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 even
greater 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.
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.
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
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.
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 upon
frequency 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.
[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.
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 γ.
[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.
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
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]
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
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.
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
HVP, these movements can be used for improved LA construction as seen in the next
section.
[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.
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
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.
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.
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.
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.
[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
to make this radical change and decentralize to this degree.
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.
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]
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.
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
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.
[Cowling04] James Cowling, "Dynamic Location Management in Heterogeneous
Cellular Networks," MIT Thesis. http://people.csail.mit.edu/cowling/thesis/jcowling-
dynamic-Nov04.pdf
Extensive 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.pdf
Provides an informative view of the HLR/VLR architecture, as well as providing an
overview of LM techniques.
[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.012
Discusses 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=1271183
Provides 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.pdf
Discusses a Fractional-Movement scheme using Distance as the main parameter.
[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=&arnu
mber=1178889&isnumber=26480
Discusses 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.pdf
Proposes 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=0bc05f7a67b1790e3761dd0
af148832703413c5fdbb17b22a1747616f6aa0b3ead887cd28ffac928
Proposes HVP, discussing use of Velocity and other parameters for user movement
prediction.
[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=36591408
Discusses LM and systems used in current cell-phone games.
[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.html
Presents 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
Presents an LA scheme which uses three layers to avoid the ping-pong effect.
9. List of Acronyms
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.
1|Page
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|Page
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.
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.
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.
3|Page
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.
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.
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).
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|Page
where many different low capacity connections to BTSs become reduced to a smaller number of
connections towards the Mobile Switching Center (MSC).
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.
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.
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|Page
secondary MSISDNs associated with it for fax and data calls. Each MSISDN is also a primary
key to the HLR record.
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.
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.
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|Page
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).
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.
7|Page
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.
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.
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|Page
Fig.5. Illustration of the MSC/VLR Service Areas
9|Page
5. KEY GSM NETWORK FEATURES
5.1. Radio Link Aspects
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.
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
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:
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).
Slotted Aloha channel used by the mobile to request access to the network.
11 | P a g e
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.
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.
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.
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
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 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).
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.
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
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.
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.
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.
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
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 Forwarding
o Barring of Outgoing Calls
o Barring of Incoming Calls
o Advice of Charge
o Call Hold
o Call Waiting
o Multi-Party Service
o Calling Line Identification Presentation/Restriction.
o Closed User Groups
15 | P a g e
7. GSM CORE NETWORK EVOLUTIONARY
PATH
6.1. Implementing GPRS along with the existing GSM architecture
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.
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
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).
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.
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
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.
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.
18 | P a g e
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
8. REFERENCES
Introduction to GSM, the Global System for Mobile Communication. GSM Favourites. 29 May
2008. <http://www.gsmfavorites.com/documents/introduction/mobile/>
GSM - The Base Station Subsystem (BSS). Tutorials Point. 1 May 2008.
<http://www.tutorialspoint.com/gsm/gsm_base_station_subsystem.htm>
20 | P a g e
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
Balancing Push and Pull for Data Broadcast
Swarup Acharya Michael Franklin Stanley Zdonik
Brown University University of Maryland Brown University
sa@cs.brown.edu franklin@cs.umd.edu sbz@cs.brown.edu
high-bandwidth data delivery. In particular, advances in internet-
working, wireless communications, and satellite, cable, and tele-
The increasing ability to interconnect computers through internet- phone networks have enabled sophisticated content to be provided
working, wireless networks, high-bandwidth satellite, and cable to users at the office, at home, and even on the road.
networks has spawned a new class of information-centered appli- Data broadcast technology stands to play a primary role in
cations based on data dissemination. These applications employ dissemination-based applications for two reasons. First, data dis-
broadcast to deliver data to very large client populations. We have semination is inherently a 1-to-n (or m-to-n where &('*) ) pro-
proposed the Broadcast Disks paradigm [Zdon94, Acha95b] for or- cess. That is, data is distributed from a small number of sources
ganizing the contents of a data broadcast program and for manag- to a much larger number of clients that have overlapping inter-
ing client resources in response to such a program. Our previous ests. Thus, any particular data item is likely to be distributed to
work on Broadcast Disks focused exclusively on the “push-based” many clients. Second, much of the communication technology that
approach, where data is sent out on the broadcast channel accord- has enabled large-scale dissemination supports broadcast, and is,
ing to a periodic schedule, in anticipation of client requests. In in some cases, intended primarily for broadcast use. For exam-
this paper, we study how to augment the push-only model with a ple, direct broadcast satellite providers such as Hughes’ DirecPC
“pull-based” approach of using a backchannel to allow clients to [Dire96], and cable television (CATV) companies (through the use
send explicit requests for data to the server. We analyze the scala- of high-bandwidth cable modems) are now, or will soon be, capable
bility and performance of a broadcast-based system that integrates of supporting multi-megabit per second data broadcast to millions
push and pull and study the impact of this integration on both the of homes and offices. Wireless networking technology for support-
steady state and warm-up performance of clients. Our results show ing mobile users also necessarily employs a broadcast component,
that a client backchannel can provide significant performance im- and broadcast (at least in a limited form) is even supported on the
provement in the broadcast environment, but that unconstrained use Internet through protocols such as IP Multicast which is the basis
of the backchannel can result in scalability problems due to server of the MBone[Erik94].
saturation. We propose and investigate a set of three techniques that
can delay the onset of saturation and thus, enhance the performance +, "-"-
./0"-"12
0
and scalability of the system.
A key aspect of dissemination-based systems is their inherent com-
munications asymmetry. By communications asymmetry, we mean
that the volume of data transmitted in the downstream direction
!#"$ (i.e., from server(s) to clients) is much greater than the volume
transmitted in the upstream direction. Such asymmetry can result
Many emerging applications involve the dissemination of data to from several factors, including:
large populations of clients. Examples of such dissemination-based Network Asymmetry — In many networks the bandwidth of
applications include information feeds (e.g., stock and sports tick- the communication channel from the server to the clients is much
ers or news wires), traffic information systems, electronic newslet- greater than the bandwidth in the opposite direction. An environ-
ters, software distribution, and entertainment delivery. A key en- ment in which clients have no backchannel is an extreme exam-
abling technology for dissemination-based applications has been ple of network asymmetry. Less extreme examples include wire-
the development and increasing availability of mechanisms for less networks with high-speed downlinks but slow (e.g., cellular)
%
This work has been partially supported by the NSF under grant IRI-9501353,
uplinks, and cable television networks, where bandwidth into the
ONR grant number N00014-91-J-4085 under ARPA order number 8220, an IBM Co- home is on the order of megabits per second, while a small num-
operative Graduate Fellowship, and by research funding and equipment from Intel ber of slow channels (on the order of tens of kilobits per second)
Corporation. connect a neighborhood to the cable head.
Client to Server Ratio — A system with a small number of
servers and a much larger number of clients (as is the case in
dissemination-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 to
Appears in the Proceedings of ACM SIGMOD Conference, Tuscon, avoid “swamping” the server with too many messages and/or too
Arizona, May 1997 much data.
1
Data Volume — A third way that asymmetry arises is due to additional expense. Second, the server must be interrupted continu-
the volume of data that is transmitted in each direction. Informa- ously to deal with pull requests and can easily become a scalability
tion retrieval applications typically involve a small request mes- bottleneck with large client populations. This latter problem can
sage containing a few query terms or a URL (i.e., the “mouse and be mitigated, to some extent, by delivering pulled data items over a
key clicks”), and result in the transfer of a much larger object or broadcast channel and allowing clients to “snoop” on the broadcast
set of objects in response. For such applications, the downstream to obtain items requested by other clients.
bandwidth requirements of each client are much higher than the
upstream bandwidth requirements.
2
#
Updates and New Information — Finally, asymmetry can also
arise in an environment where newly created items or updates to In this paper, we extend our previous work on data broadcasting by
existing data items must be disseminated to clients. In such cases, integrating a pull-based backchannel with the push-based Broad-
there is a natural (asymmetric) flow of data in the downstream di- cast Disks approach. We focus on the tradeoffs in terms of perfor-
rection. mance and scalability between the push and pull approaches and
From the above list, it should be clear that asymmetry can arise investigate ways to efficiently combine the two approaches for both
not only due to the properties of the communications network, but the steady-state and warm-up phases of operation. Client requests
can arise even in a “symmetric” environment due to the nature of are facilitated by providing clients with a backchannel for sending
the data flow in the application. Thus, dissemination-based appli- messages to the server. While there are many ways in which the
cations such as those for which the Broadcast Disks approach is clients could use this capability (e.g., sending feedback and usage
intended will be asymmetric irrespective of the addition of a client profiles), in this study we focus on the use of the backchannel to
backchannel. allow clients to pull pages that are not available in the client cache
Asymmetry imposes constraints on the behavior of clients and and that will not appear quickly enough in the broadcast.
servers in a networked application. For example, in a system with a The issues we address include: 1) the impact of client requests
high client-to-server ratio, clients must limit their interactions with on steady-state and warm-up performance and the scalability of that
the server to a level which the server and backchannel can han- performance; 2) the allocation of broadcast bandwidth to pushed
dle. World-Wide-Web (WWW) and File Transfer Protocol (FTP) and pulled pages; 3) techniques to maximize the benefit of client
servers deal with this problem by limiting the number of connec- requests while avoiding server congestion; 4) the sensitivity of the
tions they are willing to accept at a given time. Such a limitation performance to the variance in client access patterns; and 5) the
can result in delays when accessing popular sites, such as a site impact of placing only a subset of the database on the Broadcast
containing a new release of a popular software package or one con- Disk, thereby forcing clients to pull the rest of the pages.
taining up-to-date information on elections, sporting events, stocks, In this study, we model a system with multiple clients and a
etc. single server that controls the broadcast. Clients are provided with
a backchannel, but the server has a bounded capacity for accepting
2 requests from clients. In a lightly loaded system, backchannel re-
quests are considered to be inexpensive. The limited capacity of the
In previous work we have proposed and studied Broadcast Disks server, however, means that as the system approaches saturation,
as a means for coping with communications asymmetry [Zdon94, client requests become more likely to be dropped (i.e., ignored) by
Acha95b]. This approach addresses broadcast scheduling and the server. Thus, the effectiveness of the backchannel for any one
client-side storage management policies for the periodic broadcast client depends on the level of backchannel activity created by the
of data. With Broadcast Disks, a server uses its best knowledge of other clients.
client data needs (e.g., as provided by client profiles) to construct This study adopts several assumptions about the environment:
a broadcast schedule containing the items to be disseminated and
repetitively transmits this “broadcast program” to the client popu- 1. Independence of frontchannel and backchannel. In our
lation. Clients monitor the broadcast and retrieve the items they model, traffic on the backchannel in no way interferes with
require (i.e., those that may be needed locally but are not currently the bandwidth capability of the frontchannel. While this is
cached in local storage) as they come by. In such a system, data not always the case for network technologies like Ethernet
items are sent from the server to the clients without requiring a which share the channel, it is true of many others where the
specific request from the clients. This approach is referred to as uplink and the downlink channels are physically different as
push-based data delivery. The combination of push-based data de- in CATV networks and DirecPC.
livery and a broadcast medium is well suited for data dissemination
due to its inherent scalability. Because clients are largely passive in 2. Broadcast program is static. While having dynamic client
a push-based system, the performance of any one client receiving profiles and therefore, dynamic broadcast programs is inter-
data from the broadcast is not directly affected by other clients that esting, we reserve this problem for a future study. We do,
are also monitoring the broadcast. however, study both the steady-state performance and the
In contrast to a periodic broadcast approach, traditional client- warm-up time for clients.
server database systems and object repositories transfer data using a 3. Data is read only. In previous work, we studied techniques
pull-based, request-response style of operation (e.g., RPC). Using for managing volatile data in a Broadcast Disk environment
request-response, clients explicitly request data items by sending [Acha96b]. We showed that, for moderate update rates, it is
messages to a server. When a data request is received at a server, the possible to approach the performance of the read-only case.
server locates the information of interest and returns it to the client. Thus, in order to make progress on the problem at hand, we
Pull-based access has the advantage of allowing clients to play a have temporarily ignored that issue here.
more active role in obtaining the data they need, rather than relying
solely on the schedule of a push-based server. However, there are The remainder of the paper is structured as follows: In Section
two obvious disadvantages to pull-based access. First, clients must 2, we describe the extensions that we made to our previous work in
be provided with a backchannel over which to send their requests order to combine pull-based data delivery with our existing push-
to the server. In some environments, such as wireless networks based scheme. In Section 3, we sketch the approach that we took
and CATV, the provision of a backchannel can impose substantial to simulating the combined push-pull environment, and in Section
2
the value of a page depends not only on the access probability but
g a also on how quickly it arrives on the broadcast.
c b ++ . /
and , then page will always be ejected before Predictability may be important for certain environments. For example, in mo-
page even though its probability of access is higher. Intuitively, bile networks, predictability of the broadcast can be used to reduce power consump-
tion [Imie94b].
3
CacheSize Client cache size (in pages)
and no backchannel is used. On a page miss, clients simply
MC ThinkTime Time between
page accesses
wait for the desired page to appear on the broadcast.
ThinkTimeRatio Ratio of
to
think times
2. Pure-Pull. Here, all broadcast bandwidth is dedicated to SteadyStatePerc %
requests filtered through cache
pulled pages (PullBW=100%) so there is no periodic broad-
Noise % workload deviation for
cast. On a page miss, clients immediately send a pull re- Zipf distribution parameter
quest for the page to the server. This is the opposite of Pure- Table 1: Client Parameter Description
Push, that is, no bandwidth is given to the periodic broad-
cast. It is still a broadcast method, though, since any page
that is pulled by one client can be accessed on the frontchan- is independent of the other clients once the broadcast program is
nel by any other client. This approach can be referred to as fixed. With a backchannel, however, there is explicit contention
request/response with snooping. among the clients for the use of that channel. Thus, to model a
3. Interleaved Push and Pull (
). This algorithm mixes broadcast environment with a backchannel, we must account for
the activity of the competing clients.
both push and pull by allowing clients to send pull requests
for misses on the backchannel while the server supports a We use two client processes to simulate an arbitrarily large
client population. The first process called the Measured Client
Broadcast Disk plus interleaved responses to the pulls on
the frontchannel. As described previously, the allocation of
( ), models a single client and is analogous to the client sim-
bandwidth to pushed and pulled pages is determined by the ulated in our previous work; it is this client whose performance is
reported in the simulation experiments. The second process, the
PullBW parameter.
Virtual Client ( ), models the combined effect of all other clients
A refinement to
uses a fixed threshold to limit the use in the system. The parameters that describe the operation of the
of the backchannel by any one client. The client sends a pull re- and
are shown in Table 1.
quest for page only if the number of slots before is sched- The simulator measures performance in logical time units
uled to appear in the periodic broadcast is greater than the thresh- called broadcast units. A broadcast unit is the time required to
old parameter called ThresPerc. Threshold is expressed as a per- broadcast a single page. The actual response time will depend on
centage of the major cycle length (i.e., the push period). When the amount of real time required to transmit a page on the broadcast
ThresPerc=0%, the client sends requests for all missed pages to the channel. The client think times are also stated in broadcast units, so
server. When ThresPerc=100% and the whole database appears in the relative performance of the approaches are largely independent
the push schedule, the client sends no requests since all pages will of the bandwidth of the broadcast medium.
appear within a major cycle. Increasing the threshold has the ef- The has a cache that can hold CacheSize pages. It ac-
fect of forcing clients to conserve their use of the backchannel and cesses database pages using a Zipf [Knut81] probability distribu-
thus, minimize the load on the server. A client will only pull a page
tion. The Zipf distribution (with parameter ) is frequently used
that would otherwise have a very high push latency. to model skewed (i.e., non-uniform) access patterns. waits
In Section 4, we examine the performance of these different ap- MC ThinkTime broadcast units between requests. If possible, re-
proaches, as well as the impact of parameters such as PullBW and quests are serviced from the cache; otherwise, they are either satis-
ThresPerc (in the case of
). We also investigate the pull-based fied by the broadcast or pulled from the server. In either case, the
policies for cases in which only a subset of the database is broad- client sleeps until the page is retrieved.
cast. In particular, we examine the performance of the system when The Virtual Client
, like
, follows a two step “request-
the slowest and the intermediate disk in the broadcast program are think” loop. We use the parameter ThinkTimeRatio to vary the rela-
incrementally reduced in size. tive intensity of
request generation compared to
. The think
!
"$
time of is drawn from an exponential distribution with a mean
of MC ThinkTime/ThinkTimeRatio. Thus, the higher the Think-
TimeRatio, the more frequent are
’s requests, and the larger a
The results presented in this paper were obtained using a de- client population
represents. Like ,
follows a Zipf dis-
tailed model of the Broadcast Disks environment, extended to ac- tribution to access the database and filters all its requests through a
count for a backchannel. The simulator is implemented using cache of CacheSize pages.
CSIM [Schw86]. In this section we focus on extensions to the When a client begins operation, it brings pages into its cache as
original model needed to integrate pull-based access. Details of it faults on them. This is referred to as the warm-up phase of oper-
the original model are available in [Acha95a]. ation. Once the cache has been full for some time, the client is said
The simulation model is shown in Figure 2. The simulated to be in steady state. At any point in time, it is likely that there are
clients (represented as and
as described below) access some clients just joining the broadcast, some leaving it, and some
in steady-state. Since
represents the entire client population
data from the broadcast channel. They filter every request through
a cache (if applicable) and through the threshold algorithm (if ap- (minus the single client
), we assume that some of its requests
plicable) before submitting it to the server using the backchannel. are from clients in warm-up and some are from clients in steady-
The server can broadcast a page from the broadcast schedule or as state. In warm-up, a client’s cache is relatively empty, therefore we
a response to a queued page request. This choice is indicated by assume that every access will be a miss. In steady-state, a client’s
the Push/Pull MUX and is based on the value of PullBW. We de- cache is filled with its most important pages, and thus, we filter all
scribe the client and server models in more detail in the following requests through the cache.
We use the parameter SteadyStatePerc to represent the propor-
sections.
tion of clients in steady-state. Before every access made by ,a
,
coin weighted by the parameter SteadyStatePerc is tossed and de-
pending on the outcome the request is either a) filtered through the
In our previous studies we modeled only a single client because in cache (steady-state) or b) directly sent to the server (warm-up).
the absence of a backchannel, the performance of any single client In a broadcast environment, the server generates a broadcast
The case where a server disseminates only a subset of the pages is studied in program taking into account the access probabilities of the all
clients. Thus, it is very likely that the generated program is sub-
Section 4.3.
4
Broadcast Server
Broadcast
Schedule Broadcast Medium
Push/
Pull
MUX
Server
Queue MC VC
Req Req
No Cache Cache
BackChannel
#
"$ 2
ServerDBSize. These pages are interleaved into a broadcast pro-
gram as described in Section 2.1. This program is broadcast re-
is described by several parameters. NumDisks is the number of
In this section, we use the simulation model to explore the trade-
levels (i.e., “disks”) in the multi-disk program. DiskSize ,
offs between using push and pull to access data in a broadcast envi-
[1..NumDisks], is the number of pages assigned to each disk . Each
ronment. The primary performance metric is the average response
page is broadcast on exactly one disk, so the sum of DiskSize over
time (i.e., the expected delay) at the client measured in broadcast
all is equal to the ServerDBSize. The frequency of broadcast of
units.
each disk relative to the slowest disk is given by the parameter
Table 3 shows the parameter settings for these experiments. The
. It is assumed that the lower numbered disks have higher
server database size (ServerDBSize) is 1000 pages and a three-disk
broadcast frequency.
Since the
captures the entire client population (except one
broadcast is used for all the experiments. The size of the fastest
disk is 100 pages, the medium disk is 400 pages and the slowest
client), the server uses its access pattern to generate the broadcast.
disk is 500 pages. The relative spin speeds of the three disks are 3,
The simplest strategy for assigning pages to disks is to place the
0
DiskSize hottest pages (from
’s perspective) on Disk #1, the
2 and 1, respectively. The client cache size is 100 pages (10% of
5
CacheSize 100 In general, for the pull-based schemes, better steady-state per-
ThinkTime 20 formance is achieved when most of the other clients are also in the
ThinkTimeRatio 10, 25, 50, 100, 250
steady-state (e.g., the 95% curves). This behavior is to be expected
SteadyStatePerc 0%, 95%
— a client is likely to have better performance if its needs from
Noise 0%, 15%, 35%
0.95 the broadcast are similar to the needs of the majority of the client
ServerDBSize 1000 population. Clients that are in the warm-up state (or that do not
NumDisks
3 have caches) are likely to request the highest valued pages, thus,
01 100, 400, 500 a considerable amount of the bandwidth dedicated to pulled pages
01
is likely to be taken up by such pages. In contrast, once clients
+
3, 2, 1
ServerQSize 100 are in steady-state, they do not access the #
$ &% ' )( high-
PullBW 10%, 20%, 30%, 40%, 50% est valued pages from the broadcast (they are obtained from the
ThresPerc 0%, 10%, 25%, 35% client cache), which frees up bandwidth for the next-most impor-
Table 3: Parameter Settings
tant pages. In this experiment, since the
performance is being
measured 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
the database). The back-channel queue can hold up to 100 requests
) are in steady-state as well. *
At the left side of the graph, since the system is very lightly
for distinct pages, and the percentage of slots on the broadcast al-
located to pull pages (for ) is varied from 10% to 50%. The loaded, the requests sent to the server via the backchannel are ser-
ThinkTime is set to 20 broadcast units, and the ThinkTimeRa-
viced almost immediately. At the extreme left (ThinkTimeRatio
tio is varied so that the
generates requests from 10 to 250 times
= 10) all of the requests made by all clients are serviced quickly.
In this case, the pull-based approaches perform similarly and sev-
more frequently than the measured client. This can be thought of as
eral orders of magnitude better than Pure-Push. + . In a very lightly
placing an additional load on the server that is equivalent to a client
loaded system, pull-based approaches are able to provide much
population of ThinkTimeRatio clients operating at the same rate as
the . more responsive, on-demand access to the database, and since our
model does not impose any costs for uplink usage, there is no in-
Except were explicitly noted, the response time results were
centive for a push-based approach in this case.
obtained once the client reached steady state. For the steady-state
As the load on the server is increased (i.e., increasing Think-
numbers, the cache warm-up effects were eliminated by starting
TimeRatio), however, the performance of the pull-based approaches
measurements only 4000 accesses after the cache filled up and then,
begins to degrade. Beyond a ThinkTimeRatio of 50, all of the pull-
running the experiment until the response time stabilized. It should
based approaches perform worse than Pure-Push, and when the
be noted that the results described in this section are a small subset
system becomes even more heavily loaded, (e.g., at a ThinkTimeR-
of the results that have been obtained. These results have been
atio of 100 and higher) Pure-Pull performs worse than both Pure-
chosen because they demonstrate many of the unique performance
Push and . When all other clients are in the warm-up phase,
aspects and tradeoffs of this environment, and because they identify
important areas for future study.
’s performance deteriorates sharply since the server is more li-
able to drop requests. Because of the disagreement between the
"$
2 needs of the and those of the rest of the clients, the
a high penalty when one of its requests gets dropped, because the
pays
In the first experiment, we examine the basic tradeoffs between a other clients have a lower probability of accessing the same page.
pure push-based approach, a pure pull-based approach, and , Even when SteadyStatePerc = 95%, the performance of Pure-Pull
deteriorates quite rapidly as the server queue fills. The ap-
which combines the two in a straightforward manner as described
proach, which in this case, dedicates half of the broadcast band-
in Section 2.3.
width to pushing pages, has worse performance than Pure-Pull at
2 0
"$
low to moderate contention rates, but levels out to a better response
time than Pure-Pull when the contention at the server is high. At
Figure 3(a) shows the expected average response time of requests lower loads, the pushed pages occupy broadcast slots that could
made by the
once steady-state has been reached vs. the Think- better be used to service pull requests, while at higher loads, they
TimeRatio. In this case, for
, PullBW is set to 50%; that is, up limit how long a client will have to wait for a page, even if its re-
quest is dropped by the server.
to half the broadcast bandwidth is dedicated to broadcasting pulled
pages (i.e., those requested on the backchannel). Of course, in the In effect, while push has a poorer response time than pull at
Pure-Push and Pure-Pull case, the entire broadcast bandwidth is lower loads, it provides an upper bound on the latency for any page,
dedicated to pages on the periodic broadcast and to the pulled pages i.e., a “safety-net”, when the server congestion causes pull requests
respectively. to be dropped. This is the fundamental tradeoff between push and
Five curves are shown. The performance of Pure-Push is a flat pull in the Broadcast Disk environment.
line at 278 broadcast units. Pure-Push does not allow clients to use This experiment, thus, demonstrates that in steady state if the
the backchannel, so its performance is independent of the size of system is always underutilized, Pure-Pull is the algorithm of choice
the client population (or ThinkTimeRatio). For each of the two pull- and if the system is saturated, the server should disseminate via
based approaches (i.e., Pure-Pull, and ), two separate curves Pure-Push. However, the use of either of the two algorithms in a
system with widely varying loads can lead to very erratic perfor-
are shown. These curves, labeled as 0% and 95%, show the cases
in which the
’s access pattern is generated as if 0% and 95% mance. The goal of this study is to develop strategies which pro-
of the clients it represents are in the steady-state, respectively (i.e., vide consistently good response times over a wide range of system
SteadyStatePerc = 0% or 95%). Clients in steady-state are assumed loads. The algorithm is one such technique and as Figure 3
,
to have completely warmed-up caches containing the highest val- This result holds only to the extent that clients have similar access patterns. The
ued pages. impact
- of differing access patterns is addressed in Section 4.1.4.
. with SteadyStatePerc = 0% performs somewhat worse than the others at
For Pure-Pull
"!
the measure of value is (i.e., probability of access ), while for this point. Since half of the broadcast bandwidth is dedicated to push, much of the
it is
(i.e., divided by the frequency of occurrence in the push broadcast remaining bandwidth is consumed by non-steady-state clients pulling pages that the
/10
schedule). already has cached.
6
800 600
Response Time (Broadcast Units) Push
400 300
300
200
200 Push
Pull
100 IPP PullBW 50%
100 30%
10%
0 0
10 25 50 100 250 10 25 50 100 250
Think Time Ratio Think Time Ratio
(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- in which clients are not expected to monitor the broadcast contin-
Push do better, the performance of is more uniform over the uously. For example, in an Advanced Traveler Information Sys-
entire space. In the rest of this section and the next two experi- tem [Shek96], motorists join the “system” when they drive within
ments, we will study three parameters that influence ’s perfor- range of the information broadcast.
mance — pull bandwidth, threshold (as determined by ThresPerc) Figure 3(a) showed that when the
is in steady-state, it per-
and the size of the push schedule. These sensitivity results high- forms better for both pull-based approaches when most of the other
light the system tradeoffs and provide input to fine-tune for clients are in steady-state as well. Figures 4(a) and 4(b) show the
consistent performance across a broad spectrum of server loads. time it takes for the
’s cache to warm up for ThinkTimeRa-
In the preceding graph, one factor driving the relative performance as the client warms up, this number approaches 100%. Recall
of the approach compared to the two “pure” approaches was that ThinkTimeRatio=25 represents a lightly loaded system while
the PullBW, that is, the maximum percentage of the bandwidth al- ThinkTimeRatio=250 corresponds to a heavily loaded system. As
located for servicing pull requests. In theory, this parameter al-
can be seen in Figure 4(a), under low-moderate loads, Pure-Pull
lows to vary between the performance of Pure-Push (PullBW allows the fastest warm up, with the other approaches doing sig-
= 0%) and Pure-Pull (PullBW = 100%). Figure 3(b) shows the
nificantly worse. For the higher load case shown in Figure 4(b),
steady-state performance of the approach (with SteadyState- however, the approaches invert, with Pure-Push showing the best
Perc = 95%) for three values of PullBW: 10, 30, and 50% (i.e. the warm up performance because the push system delivers data items
same case as in Figure 3(a)). The curves for Pure-Push and Pure- faster since client requests are dropped due to server saturation. As
Pull are also shown for reference.
seen previously, under a heavy load, the ’s performance for the
As expected, the performance of tends towards that of pull-based approaches is better when the other clients are in a simi-
Pure-Pull as the bandwidth dedicated to pulled pages is increased. lar state (i.e., warming up, in this case). Note that for the remainder
As such, it performs well at lower loads and poorly at higher of this paper, all performance results are shown for the steady-state
loads, tending towards the S-curve shape characteristic of Pure- case (i.e., SteadyStatePerc=95%).
Pull. Likewise, with less bandwidth dedicated to pulled pages, the
performance of
flattens out, similarly to Pure-Push. It is in-
" . /
2
2
teresting to note, however, that with PullBW = 10%, performs
slightly worse than Pure-Push even at low system loads. The rea- Both the steady-state and warm-up results showed the negative ef-
son for this behavior is the following: In this case, 10% of the band- fect on performance that arises when a client’s data access pattern
width is taken away from the pushed pages, resulting in a slowdown differs significantly from the aggregate access pattern of the other
in the arrival of those pages (i.e., the Broadcast Disk takes longer clients in the system. In particular, the results showed that Pure-
to rotate). The small amount of bandwidth that is freed up for pull Pull was particularly sensitive to such disagreement when the sys-
is insufficient to handle the volume of pull requests, even for small tem was heavily loaded. In this section, we examine this issue fur-
client populations. For example, at ThinkTimeRatio = 10, 58% of ther, using the Noise parameter described in Section 3. Recall that
the pull requests are dropped by the server. These dropped requests in this study, Noise specifies the degree to which the ’s access
are likely to be ultimately satisfied by the pushed pages, whose ar- pattern is permuted with respect to the access pattern of the
rival rates have been slowed down by 10%. (whose access pattern is used to generate the broadcast program).
A higher Noise value indicates a higher level of disagreement be-
7
350000 800000
Push Push
Pull 0% 700000 Pull 0%
300000 95% 95%
IPP 0% IPP 0%
Time (Broadcast Units)
0 0
10 20 30 40 50 60 70 80 90 95 10 20 30 40 50 60 70 80 90 95
Cache Warm Up% Cache Warm Up%
700 700
Response Time (Broadcast Units)
500 500
400 400
300 300
Push Noise 0% Push Noise 0%
200 15% 200 15%
35% 35%
100 Pull Noise 0% 100 IPP Noise 0%
15% 15%
35% 35%
0 0
10 25 50 100 250 10 25 50 100 250
Think Time Ratio Think Time Ratio
Turning to Figure 5(a), it can be seen that at low system loads, Pure- load, pull can provide far more responsive access than push, but that
Pull is insensitive to Noise but that at high system loads, Noise has pull suffers from scalability problems as the load on the system is
a substantial negative impact. As long as the server is able to satisfy increased. Beyond a certain ThinkTimeRatio, Pure-Pull was seen to
all of
’s pull requests quickly, its performance is independent perform significantly worse than Pure-Push. The
approach is
of the access patterns of the other clients. When the server becomes an attempt at a compromise between the two “pure” approaches. As
loaded and drops requests, however,
becomes dependent such,
was found to perform worse than Pure-Pull under light
on the requests of the other clients. With higher Noise values, the to moderate loads, but better than Pure-Pull under heavy loads.
other clients are less likely to ask for a page on which might pays a price when the load is low to moderate because it
be blocked. dedicates some of the broadcast bandwidth to push. As the server
In contrast, Figure 5(b) shows that the negative impact of Noise becomes saturated with backchannel requests, however, it begins
becomes apparent at a lower ThinkTimeRatio value for than to drop the client requests, and the pushed data provides a much
for Pure-Pull (e.g., 25 instead of 50). Here, the server saturates needed safety net that ensures that clients eventually receive their
earlier for
because half of the broadcast bandwidth is dedi-
data.
cated to pushed pages. At higher loads, however, , is much loses to Pure-Pull under moderate loads because it sends
less sensitive to Noise than Pure-Pull. At higher loads, the pushed the same number of requests to the server as Pure-Pull, but has less
pages act as a “safety net”, that bounds the amount of time that a bandwidth with which to satisfy those requests. Thus, the server
client will have to wait for a page if one of its requests is dropped by becomes saturated under
before it becomes saturated under
the server. Also, as Noise increases, ’s performance degrades Pure-Pull. For example, in the experiment shown in Figure 3(a), at
since its access pattern deviates from the push program broadcast a ThinkTimeRatio of 50, the server drops 68.8% of the pull requests
by the server. it receives when
is used, as opposed to only 39.9% of the
+
"$ +
. / requests when Pure-Pull is used.
One way to reduce the number of pull requests sent to the server
under the
approach is to constrain the pages which clients
The previous results demonstrated a fundamental tradeoff of the are allowed to ask to be only those that are “farthest away”. As de-
asymmetric broadcast environment, namely, that under very light scribed in Section 2.3, we use the notion of threshold to accomplish
8
600 600
Response Time (Broadcast Units)
400 400
300 300
this.
with a threshold works as follows: On a cache miss, Figure 6(b) shows the performance for the same settings except
clients check the push program to determine when the missed page with the PullBW reduced to 30%. In this case, the reduced band-
is scheduled to appear next on the broadcast. If the page is sched- width available for pull slots causes the server to become saturated
uled to appear within the threshold, then the client must wait for earlier (e.g., for ThresPerc = 25% and ThinkTimeRatio = 25, the
the page without issuing a pull request. Thresholds are expressed server drops 9.4% of the pull requests). As a result, a ThresPerc of
as a percentage of the push period (i.e. the major cycle length of 35% provides the best performance for in all cases here ex-
the Broadcast Disk). cept under very light load. This also translates to better scalability:
In the results shown so far,
used a threshold (called Thres- crosses Pure-Push at ThinkTimeRatio = 25 with no threshold
Perc) of 0% — any cache miss would result in a pull request being but at ThinkTimeRatio = 75 with a threshold of 35%. This translates
sent to the server. In contrast, a ThresPerc of 25% would restrict the to roughly a factor of three improvement in the number of clients
client from sending pull requests for any pages that are scheduled that can be supported before losing to Pure-Push.
to appear within the next quarter of the push period (i.e., the ma- As the above graphs show,
with different threshold val-
jor cycle). The threshold, therefore, provides a knob that trades-off ues never beats the best performance of Pure-Pull and Pure-Push.
expected delay vs. backchannel usage and server congestion. However, as pointed out earlier, the two “pure” algorithms can de-
The intuition behind threshold is to save the use of the grade in performance rapidly if the system moves out of their niche
backchannel for those pages that currently would induce the longest system load range.
, on the other hand, while never having
response time penalty. Threshold is a simple mechanism for im- the best performance numbers, with an appropriately chosen value
proving the usefulness of the backchannel. It can be applied at indi- of threshold, can provide reasonably good performance over the
vidual clients, and requires only that they be aware of the broadcast complete range of system loads.
schedule for the pushed data.
Figure 6(a) shows the performance for various values of Thres-
#
"$ 2
Perc when the PullBW is set at 50% (as in the previous experiment).
An important issue that has arisen in the preceding experiments
Also shown for reference are Pure-Push and Pure-Pull. The curve
for a ThresPerc of 0% is identical to that for in Figure 3(a). is the impact of the allocation of broadcast bandwidth to pushed
With no threshold,
becomes slower than Pure-Push when the pages and to pulled pages. As discussed in Section 4.1.2, one way
ThinkTimeRatio exceeds 35. In contrast, with a ThresPerc of 25%, to adjust this allocation is to change the PullBW. Up to this point,
requests only half of its missed pages from the server and
however, our approach placed all pages on the push schedule. The
therefore, it remains better than Pure-Push up to a ThinkTimeRa- Broadcast Disks model provides a flexible way to do this, as it
tio of 75 — roughly a factor of two improvement in the number of allows the proportion of bandwidth given to particular groups of
clients that can be supported. items to be assigned in accordance with their popularity. Changing
Under low loads (e.g., ThinkTimeRatio= 10), threshold hurts the PullBW in the previous experiments, therefore, affected the pe-
performance by unnecessarily constraining clients — there is riod length of the push schedule, but did not impact its contents or
plenty of server bandwidth to handle all the requests of the small the relative frequencies at which pages appear in the schedule.
client population. As clients are added however, the threshold be- An alternative (or actually, complementary) approach to chang-
gins to help performance. In this case, however, it is interesting to ing the PullBW is to restrict the set of pages that are placed in the
note that a threshold of 35% performs worse than one of 25% up to push schedule. That is, rather than pushing the entire database,
a ThinkTimeRatio of 50. Prior to that point, the threshold of 25% choose a subset of the pages to push, and allow the rest to be ob-
is sufficient to offload the server (e.g., no requests are dropped) so tained by pull only. As is discussed in Section 5, a similar ap-
the additional threshold simply makes clients wait longer than nec- proach was advocated in [Imie94c, Vish94]. Although that work
essary for some pages. was based on a somewhat different system model and had a differ-
ent objective function, the tradeoffs that arise in both environments
Because the client does not know what the server plans to place in the pull slots, are similar. In general, as discussed above, placing all items on the
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-
push schedule provides a “safety net”, which bounds the time for
proximately half of the pages appear at least once in the first 25% of the broadcast which a client will have to wait for a data item. Such a bound is
period here. particularly important in our environment, in which the server re-
sponds to heavy load by dropping requests. The downside is that
9
1000 600
Push
Push Pull
Response Time (Broadcast Units)
200
100
0 0
0 100 200 300 400 500 600 700 0 100 200 300 400 500 600 700
Number of Non-Broadcast Pages Number of Non-Broadcast Pages
of the number of pages not on the push schedule and thus, are
700 straight lines with response times of 2 and 278 units respectively.
Push
Pull In all the following figures, since the response time of
for
Response Time (Broadcast Units)
The performance of Pure-Pull and Pure-Push are independent The line for Pure-Pull is not visible in Figures 7(a) and 7(b) because of overlap
with the x-axis.
10
schedule pages is again apparent here in the crossover among the not be able to pull non-broadcast pages and there is no upper-bound
lines between ThinkTimeRatio of 25 and 50. If the system on the latency for those pages provided by the push. Using a thresh-
is underutilized, chopping more pages makes sense since there is old with the “chopped disk” can help considerably since all non-
enough pull bandwidth to serve client requests. Once the system broadcast pages pass the threshold filter and the effect is to reserve
saturates (beyond ThinkTimeRatio of 25), the performance hit due more of the backchannel capability for those pages.
to dropped requests and the “safety net” of the push schedule cause We also studied the effect of differences in access patterns in
the order of the
algorithms to invert on the right-hand side of studies of warm-up times and noise. For warm-up, in a lightly
the graph from the ordering on the lightly loaded left-hand side. loaded system, Pure-Pull warms up fastest, while in a heavily
As in the previous two experiments, while a restricted push loaded system, Pure-Push does best. In general, a client will warm
schedule cannot be expected to beat the best performance num- up quicker if other clients are in a similar state. Disagreement in ac-
bers of Pure-Push and Pure-Pull, the above results show that the cess patterns is represented by Noise. We showed that for a lightly
algorithm with an appropriately chosen subset to be broad- loaded system, Noise has little impact since clients can pull what
cast (along with proper values of threshold and pull bandwidth), they need; however, for a heavily loaded system, Noise has a large
can provide consistently good performance over the entire range of negative impact.
saturates earlier, but is overall less sensitive
server load. to noise because of the “safety net” effect of the scheduled broad-
cast.
"-"1
0
We have seen that when there is little or no contention at the server, The basic idea of managing broadcast data has been investigated
pulling pages using the backchannel with no server push (Pure- by a number of projects [Amma85, Herm87, Giff90, Bowe92,
Pull) is the best strategy. If the server is lightly loaded, all requests Imie94a, Imie94b]. Our work on Broadcast Disks differs from
get queued and are serviced much faster than the average latency these in that we consider multi-level disks and their relationship
of pages on the Broadcast Disk. At the other extreme (typically at to cache management. In [Acha95a], we proposed an algorithm to
the right-hand side of the response time graphs), the server is sat- generate Broadcast Disk programs and demonstrated the need for
urated and the probability of a backchannel request being dropped cost-based caching in this environment. In [Acha96a], we showed
is extremely high. Consequently, in this region, the best strategy is how opportunistic prefetching by the client can significantly im-
to use Pure-Push since it provides a “safety net” and puts an up- prove performance over demand-driven caching. More recently, in
per bound on the delay for any page. The asymmetry is extreme [Acha96b], we studied the influence of volatile data on the client
enough to make Pure-Pull ineffective justifying the intuition that performance and showed that the Broadcast Disk environment is
push-based techniques are best suited for highly asymmetric set- very robust in the presence of updates.
tings. The Datacycle Project [Bowe92, Herm87] at Bellcore inves-
Use of either of the two “pure” algorithms in a system with tigated the notion of using a repetitive broadcast medium for
widely varying loads can lead to significant degradation of per- database storage and query processing. An early effort in infor-
formance since they fail to scale once the load moves away from
their niche domain. Consequently, we introduced the algo-
mation broadcasting, the Boston Community Information System
(BCIS) is described in [Giff90]. BCIS broadcast news articles
rithm, a merge between the two extremes of Pure-Pull and Pure- and information over an FM channel to clients with personal com-
Push to provide reasonably consistent performance over the entire
spectrum of system load. Since
suffers the same bottleneck
puters specially equipped with radio receivers. Both Datacycle
and BCIS used a flat disk approach. The mobility group at Rut-
problems of any pull based approach, we studied three techniques gers [Imie94a, Imie94b] has done significant work on data broad-
to improve its scalability and performance by minimizing the time casting in mobile environments. A main focus of their work has
spent in saturation. been to investigate novel ways of indexing in order to reduce power
The first approach is to adjust the pull bandwidth. Increasing it consumption at the mobile clients. Some recent applications of
might move the server away from saturation since the rate at which dissemination-based systems include information dissemination on
the queue is serviced also increases. However, the downside of in- the Internet [Yan95, Best96], Advanced Traveler Information Sys-
creasing pull bandwidth is the reduction in the push bandwidth, tems [Shek96] and dissemination using satellite networks [Dao96].
slowing the broadcast delivery and introducing a fundamental Work by Imielinski and Viswanathan [Imie94c, Vish94] is more
tradeoff. The limiting cases of this are Pure-Pull (PullBW=100%) closely related to the results we report here, in terms of studying
and Pure-Push (PullBW=0%). An interesting observation about the trade-offs between pull and push in a broadcast environment.
pull bandwidth is that while lower values of PullBW (e.g., 30%) do They list a number of possible intermediate data delivery options
not produce the best results when the system is lightly loaded, nei- between the two extremes of pure-pull and pure-push. They pro-
ther do they produce the worst results when the system is heavily pose an algorithm to split the database into a “publication” group
loaded and thus, are suited for systems with dynamic loads. and an “on-demand” group in order to minimize the number of up-
Another way to achieve the goal of delaying saturation is the link requests while constraining the response time to be below a
use of a threshold. Instead of flooding the server with every possi- predefined upper limit. Though similar in spirit to Experiment 3
ble miss, clients use discretion by only requesting their most “ex- (Section 4.3), the goal of our work is different in that we try to find
pensive” ones. This has the effect of delaying the point at which the best response time for the client, while budgeting the use of the
the server queue saturates. backchannel. However, the biggest difference is in the model of
The final technique that we described for avoiding saturation is the server. They use an M/M/1 queuing model for the backchan-
one in which successively larger pieces are chopped off the slowest nel which when unstable, allows a queue of infinite length. Our
part of the broadcast schedule to increase the available bandwidth environment is not accurately captured by an M/M/1 queue. Re-
for pull. Since PullBW essentially predetermines the split between quests and service times are not memoryless, due to caching and
pull and push bandwidth allocations, we must increase PullBW in the interleaving of push and pull slots dictated by PullBW. Also,
order to realize a benefit from this approach. This technique has the server in our model uses a bounded queue, which drops re-
the disadvantage that if there is not enough bandwidth dedicated to quests if it becomes full. Another key difference between the mod-
pulled pages, performance can degrade severely since clients will els is that in our environment, any page can be pulled through
11
the backchannel as long as its delay is greater than the threshold. and matched, so that the most appropriate mechanism can be used
In [Imie94c, Vish94], only pages in the “on-demand” group can for each type of data flow in the system.
//
$
be requested over the back channel. They also assume an implicit
symmetric model where both the back and the front channel share a "
common medium. Thus, while there is a correlation between their
results and ours when their model is stable (corresponding to a low The authors would like to thank Rafael Alonso for his ideas during
ThinkTimeRatio in this work), in general, those results are not di- the early phases of this work.
rectly applicable here.
There has also been work on broadcasting in Teletex systems
[Amma85, Wong88]. [Wong88] presents an overview of some of
the analytical studies on one-way, two-way and hybrid broadcast [Acha95a] S. Acharya, R. Alonso, M. Franklin, S. Zdonik, “Broadcast
Disks: Data Management for Asymmetric Communication Environ-
in this framework. However, as in [Imie94c, Vish94], their server ments”, Proc. ACM SIGMOD Conf., San Jose, CA, May, 1995.
models are significantly different from ours. [Acha95b] S. Acharya, M. Franklin, S. Zdonik, “Dissemination-based
, ! Data Delivery Using Broadcast Disks”, IEEE Personal Communications,
2(6), December, 1995.
[Acha96a] S. Acharya, M. Franklin, S. Zdonik, “Prefetching from a Broad-
In this paper, we addressed the problem of adding a backchannel to cast Disk”, 12th International Conference on Data Engineering, New
Orleans, LA, February, 1996.
a broadcast-based environment. We showed that in highly asym-
[Acha96b] S. Acharya, M. Franklin, S. Zdonik, “Disseminating Updates
metric cases, the server can become a bottleneck and using the
on Broadcast Disks”, Proc. VLDB Conf., Bombay, India, Septem-
backchannel to simply pull all misses is not a good strategy. We ber, 1996.
showed how a few simple techniques can be used to improve this [Amma85] M. Ammar, J. Wong, “The Design of Teletext Broadcast Cy-
situation. In particular, we demonstrated how using a threshold, cles”, Perf. Evaluation, 5 (1985).
adjusting the pull bandwidth, and reducing the size of the sched- [Best96] A. Bestavros, C. Cunha, “Server-initiated Document Dissemina-
uled push program can all contribute to improved performance and tion for the WWW”, IEEE Data Engineering Bulletin, 19(3), September,
scalability over a wide range of workloads. 1996.
We believe that this paper carefully delineates the issues and the [Bowe92] T. Bowen, G. Gopal, G. Herman, T. Hickey, K. Lee, W. Mans-
field, J. Raitz, A. Weinrib, “The Datacycle Architecture”, CACM,
tradeoffs that one must confront in this type of environment. We 35(12), December, 1992.
also believe that we have developed a realistic simulation model [Dao96] S. Dao, B. Perry, “Information Dissemination in Hybrid Satel-
that was used to advantage in this study and can be used in future lite/Terrestrial Networks”, IEEE Data Engineering Bulletin, 19(3),
studies. This model is based on a finite server queue and a fixed September, 1996.
service time (as reflected in PullBW). It allows us to mix push and [Dire96] Hughes Network Systems, DirecPC Home Page,
pull in various ways to study their relative merits. The model also http://www.direcpc.com/, Oct, 1996.
supports the incorporation of client caching. [Erik94] H. Erikson,“MBONE: The Multicast Backbone”, CACM, 37(8),
Beyond what was presented, we would like to develop tools to August, 1994.
make the parameter setting decisions for real dissemination-based [Fran96] M. Franklin, S. Zdonik, “Dissemination-Based Information Sys-
tems”, IEEE Data Engineering Bulletin, 19(3), September, 1996.
information systems easier. These tools could be analytic or they
[Giff90] D. Gifford, “Polychannel Systems for Mass Digital Communica-
could be a better interface on our simulator. To this end, we would tion”, CACM, 33(2), February, 1990.
be interested in adapting the analytical framework presented in
[Glan96] D. Glance, “Multicast Support for Data Dissemination in Or-
[Imie94c, Wong88] to develop solutions for our model. We also bixTalk”, IEEE Data Engineering Bulletin, 19(3), September, 1996.
see the utility in developing more dynamic algorithms that can ad- [Herm87] G. Herman, G. Gopal, K. Lee, A. Weinrib, “The Datacycle Ar-
just to changes in the system load. For example, as the contention chitecture for Very High Throughput Database Systems”, Proc. ACM
on the server increases, a dynamic algorithm might automatically SIGMOD Conf., San Francisco, CA, May, 1987.
reduce the pull bandwidth at the server and also use a larger thresh- [Imie94a] T. Imielinski, B. Badrinath, “Mobile Wireless Computing: Chal-
old at the client. We are also in the process of implementing a lenges in Data Management”, CACM, 37(10), October, 1994.
Broadcast Disk facility that will include support for a backchannel. [Imie94b] T. Imielinski, S. Viswanathan, B. Badrinath, “Energy Efficient
This will allow us and others to easily implement real applications Indexing on Air”, Proc. ACM SIGMOD Conf., Minneapolis, MN, May,
1994.
and further test our current results.
[Imie94c] T. Imielinski, S. Viswanathan, “Adaptive Wireless Information
Finally, as stated in [Fran96], the periodic push approach of Systems”, Proc. of SIGDBS Conf., Tokyo, October, 1994.
Broadcast Disks and the pull-based approach of request-response [Knut81] D. Knuth, The Art of Computer Programming, Vol II, Addison
are just two of many ways for delivering data to clients. We see Wesley, 1981.
the integration of these two techniques as described in this paper [Oki93] B. Oki, M. Pfluegl, A. Siegel, D. Skeen, “The Information Bus -
as a first step towards the development of the more general notion An Architecture for Extensible Distributed Systems”, Proc. 14th SOSP,
of a dissemination-based information system (DBIS). A DBIS is Ashville, NC, December, 1993.
a distributed information system in which it is possible to freely [Schw86] H. D. Schwetman, “CSIM: A C-based process oriented simula-
mix data delivery options. For example, the nodes in a DBIS tion language”, Proc. 1986 Winter Simulation Conf., 1986.
could communicate using periodic push, request-response, pub- [Shek96] S. Shekhar, A. Fetterer, D. Liu, “Genesis: An Approach to Data
Dissemination in Advanced Traveller Information Systems”, IEEE Data
lish/subscribe [Oki93, Yan95, Glan96], and other techniques in var- Engineering Bulletin, 19(3), September, 1996.
ious combinations.
[Wong88] J. Wong, “Broadcast Delivery”, Proceedings of the IEEE,
An integrated DBIS consists of data sources, consumers (i.e., 76(12), December, 1988.
clients), and information brokers. These brokers acquire informa- [Vish94] S. Viswanathan, “Publishing in Wireless and Wireline Environ-
tion from sources, add value to that information (e.g,. some addi- ments”, Ph.D Thesis, Rutgers Univ. Tech. Report, November, 1994.
tional computation or organizational structure) and then distribute [Yan95] T. Yan, H. Garcia-Molina, “SIFT – A Tool for Wide-area Informa-
this information to other brokers or clients. By creating hierar- tion Dissemination”, Proc. 1995 USENIX Technical Conference, 1995.
chies of brokers, information delivery can be tailored to the needs [Zdon94] S. Zdonik, M. Franklin, R. Alonso, S. Acharya, “Are ’Disks in
of many different users. Our long-term goal is to develop tools that the Air’ Just Pie in the Sky?”, IEEE Workshop on Mobile Computing
would allow the different data delivery mechanisms to be mixed Systems and Applications, Santa Cruz, CA, December, 1994.
12
PROCEEDINGS OF WORLD ACADEMY OF SCIENCE, ENGINEERING AND TECHNOLOGY VOLUME 21 JANUARY 2007 ISSN 1307-6884
knows the cell of the mobile station, the MSC can assign a location databases. A wide variety of schemes have hence
pair of voice channels in that cell for the call. If a call is in been proposed to reduce the number of location update
progress when the mobile station moves into a neighboring messages required by a device in a cellular network. Location
cell, the mobile station needs to get a new pair of voice update schemes are often partitioned into the categories of
channels in the neighboring cell from the MSC so the call can static and dynamic [3].
continue. This process is called handoff (or handover). The A location update scheme is static if there is a
MSC usually adopts a channel assignment strategy, which predetermined set of cells at which location updates must be
prioritize handoff calls over new calls. generated by a mobile station regardless of it mobility. A
scheme is dynamic if a location update can be generated by a
III. LOCATION MANAGEMENT SCHEMES mobile station in any cell depending on its mobility. Static
The continued growth of wireless communication systems, schemes offer a lower level of cost reduction but reduced
and expansion of network subscription rates, signals increased computational complexity. Dynamic schemes adjust location
demand for the efficient location management. A cellular update frequency per user and are hence able to achieve better
communication system must track the location of its users in results, while requiring a higher degree of computational
order to forward calls to the relevant cell within a network. overhead.
Cells within a network are grouped into Location Areas
(LAs). 1) Static Location Update Schemes
Users are free to move with a given location area without Static schemes define the frequency and occurrence of
updating their location, informing the network only when location updates independently from any user characteristics.
transitioning to a new LA. If a call is to be forwarded to a Such static mechanisms allow efficient implementation and
user, the network must now page every cell within the low computational requirements due to the lack of
location area to determine their precise location. Network cost independent user tracking and parameterization. The various
is incurred on location updates and paging, the balance of static location update schemes are discussed below:
these defining the field of Location Management (LM). So
a) Always-Update vs. Never-Update
there are two basic operations involved with location
management: The always-update strategy is the simplest location update
• Location Updating: Informing the network of a devices scheme; performing a location update whenever the user
location. moves into a new cell. The network always has complete
• Paging: Polling a group of cells to determine the precise knowledge of the user’s location and requires no paging to
location of a device [3]. locate the user when an incoming call arrives. The always-
The frequency of updates and paging messages relates update scheme performs well for users with a low mobility
closely to user movement and call arrival rates, along with rate or high call arrival rate. It performs quite poorly for users
network characteristics such as cell size. As mobile devices with high mobility however, requiring many location updates
move between cells in a network they must register their new and excessive use of resources. While not used in practice,
location to allow the correct forwarding of data. Continual this scheme forms the basis of many more complex location
location updates can be a very expensive operation, management mechanisms, such as location area [12] and
particularly for users with comparatively low call arrival rates. profile-based update [10].
This update overhead not only puts load on the core (wired) The never-update scheme is the logical counterpart to
network but also reduces available bandwidth in the mobile always-update, never requiring the mobile device to update its
spectrum. Importantly, unnecessary location updating incurs location with the network. This entails no location update
heavy costs in power consumption for the mobile device. The overhead but may result in excessive paging for a large
study of location management aims to reduce the overhead network or for high call arrival rates. These two strategies
required in locating mobile devices in a cellular network. represent the extremes of location management - always-
An additional area of consideration in location management update minimizing paging cost with never-update minimizing
is the mobility model used to estimate user movement in the location update cost.
network, aiding in the optimization of location updating and
b) Location Areas
paging schemes.
The location area topology is widely used to control the
frequency of location updates, both in the current GSM [14]
A. Location Update and IS-41 [6] telecommunications architectures. Here the
A location update is used to inform the network of a mobile network is partitioned via the amalgamation of groups of cells
device’s location. This requires the device to register its new into larger meta-cells, or location areas. The scheme then
location with the current base station, to allow the forwarding functions very similarly to the always-update mechanism –
of incoming calls. Each location update is a costly exercise, mobile devices only update their location when leaving their
involving the use of cellular network bandwidth and core current location area [12]. This partitioning is shown in Fig. 2,
network communication; including the modification of with four separate location areas.
a) Threshold-Based
In threshold-based schemes each mobile device maintains a
Fig. 2 Network partitioned into location areas particular parameter, updating its location when the parameter
increases beyond a certain threshold. The update threshold
If the network knows the users current location area, the may be optimized on a per-user basis, dependent on a user’s
paging required to locate a user is confined to the meta-cell call-arrival and mobility rate [1]. The most common
within which the user resides. The location update process thresholding schemes are time-based, movement-based and
may be instigated periodically or, more commonly, on distance-based; evaluated in [3].
location area boundary crossings. The periodic location- Time-Based Update: The time-based strategy requires that
updating scheme is the simplest to implement, merely users update their location at constant time intervals. This time
requiring the mobile device to send a location update message interval may then be optimized per-user, to minimize the
containing its current location area at regular time intervals. number of redundant update messages sent. This only requires
The methodology used here captures none of the details of the mobile device to maintain a simple timer, allowing
user movement however, and enforces an update frequency efficient implementation and low computational overhead. Fig
that may be highly unsuitable given the users current rate of 4 illustrates this scheme, with the updates (U1, U2 and U3)
movement. It also offers no guarantees that the network will performed at each time interval Δt, regardless of individual
have knowledge of the exact location area the user resides in, movements. It was found in [11] that signalling load may be
requiring sophisticated paging across multiple location areas. reduced using a time-based scheme, with the network
The boundary crossing method is more precise; updating the additionally able to determine if a mobile device is detached if
user location only when crossing to another location area. This it does not receive an update at the expected time.
method has its own inherent weaknesses however, particularly
when a user makes multiple crossings across a location area
boundary [5].
Fig. 5 shows a movement-based scheme, with a movement considered a complex location area. The mobile device
threshold of two. Here the device updates its location every updates its location only when entering a cell not contained in
two crossings between cells. The required paging area is the list. [16] found that when movement exhibits a medium to
restricted to a neighborhood of radius equal to the distance high predictability, the location management cost is lower
threshold around the last updated location. The paging area than that provided by schemes with a more general
requirement is reduced through this scheme, although representation of location area. When low predictability is
unnecessary updates may still be performed as a result of encountered, the high overhead of sending a large cell list to
repeated crossings over the same cell boundary. [3] finds the users outweighs the cost reduction provided by the profile-
movement-based scheme to perform better than the time- based scheme.
based scheme under a memory-less (random) movement
B. Paging
model. Under Markovian analysis, the time-based scheme is
found to perform better for special cases of extremely low While mobile devices perform updates according to their
update rates, with the movement-based scheme performing location update scheme, the network needs to be able to
slightly better for the majority of user classes. precisely determine the current cell location of a user to be
Distance-Based Update: In a distance-based scheme the able to route an incoming call. This requires the network to
mobile device performs a location update when it has moved a send a paging query to all cells where the mobile device may
certain distance from the cell where it last updated its location. be located, to inform it of the incoming transmission. It is
Again, this distance threshold may be optimized per-user desirable to minimize the size of this paging area, to reduce
according to movement and call arrival rates. 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].
Fig. 6 Distance-based location update
1) Simultaneous Paging
A distance-based update system is shown in Fig. 6. Here the
The simultaneous paging scheme, also known as blanket
location is only updated when the user travels beyond a
paging, is the mechanism used in current GSM network
certain radii from the previous update location. This scheme
implementations. Here all cells in the users’ location area are
has the benefit of not requiring an update when a user
paged simultaneously, to determine the location of the mobile
repeatedly moves between a small subset of cells, provided
device. This requires no additional knowledge of user location
these cells reside within the distance-threshold radius. [3] find
but may generate excessive amounts of paging traffic.
the distance-based scheme to significantly outperform the
Implementations of simultaneous paging favor networks with
time- and movement-based schemes under both simulation
large cells and low user population and call rates. This scheme
and theoretical analysis.
does not scale well to large networks with high numbers of
Distance-based update strategies are quite difficult to
users, necessitating the development of more advanced paging
implement in a real-world network [7]. Each mobile node is
techniques.
required to track its location and determine the distance from
the previously updated cell. This not only requires the device
2) Sequential Paging
to retain information about its starting position, but also to Sequential paging avoids paging every cell within a
possess some concept of a coordinate system, allowing the location area by segmenting it into a number of paging areas,
calculation of distance between the two points. This to be polled one-by-one. It is found in [15] that the optimal
coordinate system is a non-trivial requirement in a paging mechanism, in terms of network utilization, is a
heterogeneous network, where cell adjacencies and distances sequential poll of every cell in the location area individually,
may not be clearly defined. in decreasing probability of user residence. The individual
delays incurred in this scheme may be unacceptable however,
b) Profile-Based
and hence it is suggested that paging areas are formed from a
Under a profile-based scheme the network maintains a larger number of cells. The number of cells per paging area is
profile for each user in the network, based on previous a factor which needs to be optimized and may lead to
movements, containing a list of the most probable cells for the excessive call delays, particularly in large networks. The order
user to reside within [10]. On a location update the network by which each area is paged is central to the performance of
sends this list to the mobile device, forming what may be the sequential paging scheme. [15] suggests several methods
IV. CONCLUSION & FUTURE WORK [15] C. Rose, Roy Yates. Minimizing the avg. cost of paging under delay
constraints. Wirel. Netw., 1(2):211–219, 1995.
This paper has surveyed research on location management [16] H. Xie, S. T, and D.J. Dynamic location area management &
in cellular networks. Location management involves two performance analysis. In Vehicular Tech. Conf., 1993 IEEE 43rd, pages
536–539, 1993.
operations: location update and paging. Paging is performed [17] C. Rose & R. Yates, Minimizing the avg. cost of paging under delay
by the network to find out the cell in which a mobile station is constraints, Wireless Networks, 1 (1995) 211-219.
located so the incoming call for the mobile station can be [18] H. Xie, S. Tabbane, and D. J., Dynamic Location Area Mgt. and
routed to the corresponding base station. Location update is Performance Analysis, Proc. 43rd IEEE Vehicular Tech. Conference,
Secaucus, NJ, May 1993, pp. 536-539.
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.
Introduction to Broadcasting
In many existing and emerging application domains the downstream communication capacity from
servers to clients is much greater than the upstream communication capacity
from clients back to servers. We refer to these environments as Asymmetric Communications
Environments.
Broadcast Disks
Assumptions
11. Tuning Time: The time for which client is listening or tuning the
channel.
1. FCFS
2. Round Robin
3. Priority Scheduling
Its Assumptions:
5. No other errors
R X W Algorithm
2. On request arrival
o Look up the page
o If found
o Increment REQcnt
o Else
3. At each broadcast
o R = REQcnt
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
604 DISTRIBUTED FILE SYSTEMS CHAP. 10
Transparent access
to a Vice file server
Virtue
client
Vice file
server
work is done by the actual Vice file servers, which are responsible for maintaining
a 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 supports
most 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 repeated
here. Unlike NFS, Coda provides a globally shared name space that is maintained
by the Vice servers. Clients have access to this name space by means of a special
subdirectory in their local name space, such as /afs. Whenever a client looks up a
name in this subdirectory, Venus ensures that the appropriate part of the shared
name space is mounted locally. We return to the details below.
10.2.2 Communication
RPC client
stub
Local file
Virtual file system layer
system interface
Local OS
Network
answer. As request processing may take an arbitrary time to complete, the server
regularly sends back messages to the client to let it know it is still working on the
request. If the server dies, sooner or later this thread will notice that the messages
have ceased and report back failure to the calling application.
An interesting aspect of RPC2 is its support for side effects. A side effect is a
mechanism by which the client and server can communicate using an
application-specific protocol. Consider, for example, a client opening a file at a
video 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, data
transfer from the server to the client is guaranteed to be within a minimum and
maximum end-to-end delay, as explained in Chap. 2.
RPC2 allows the client and the server to set up a separate connection for
transferring the video data to the client on time. Connection setup is done as a side
effect of an RPC call to the server. For this purpose, the RPC2 runtime system
provides an interface of side-effect routines that is to be implemented by the
application developer. For example, there are routines for setting up a connection
and routines for transferring data. These routines are automatically called by the
RPC2 runtime system at the client and server, respectively, but their implementa-
tion is otherwise completely independent of RPC2. This principle of side effects is
shown in Fig. 10-3.
Another feature of RPC2 that makes it different from other RPC systems, is
SEC. 10.2 THE CODA FILE SYSTEM 607
Client
Server
application
Application-specific
RPC Client protocol Server
side effect side effect
Server Server
Client Client
Time Time
(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 a
strict sequential order may be delayed considerably because the server cannot
reach 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 from
their local copies.
A better solution is shown in Fig. 10-4(b). Instead of invalidating each copy
one-by-one, the server sends an invalidation message to all clients in parallel. As
a consequence, all nonfailing clients are notified in the same time as it would take
to do an immediate RPC. Also, the server notices within the usual expiration time
608 DISTRIBUTED FILE SYSTEMS CHAP. 10
that certain clients are failing to respond to the RPC, and can declare such clients
as 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 transparent
to the callee. In other words, the receiver of a MultiRPC call cannot distinguish
that call from a normal RPC. At the caller’s side, parallel execution is also largely
transparent. For example, the semantics of MultiRPC in the presence of failures
are much the same as that of a normal RPC. Likewise, the side-effect mechanisms
can 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 all
requests have been sent. In other words, the caller invokes a number of one-way
RPCs, 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 all
group members using IP multicast.
10.2.3 Processes
10.2.4 Naming
As we mentioned, Coda maintains a naming system analogous to that of
UNIX . Files are grouped into units referred to as volumes. A volume is similar to
a 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 as
maintained by the Vice servers. Usually a volume corresponds to a collection of
files associated with a user. Examples of volumes include collections of shared
binary 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 by
which the entire name space is constructed. This construction takes place by
mounting volumes at mount points. A mount point in Coda is a leaf node of a
volume that refers to the root node of another volume. Using the terminology
introduced in Chap. 4, only root nodes can act as mounting points (i.e., a client
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 aspect
of volumes below.
Considering the granularity of volumes, it can be expected that a name lookup
will cross several mount points. In other words, a path name will often contain
several mount points. To support a high degree of naming transparency, a Vice
file server returns mounting information to a Venus process during name lookup.
This information will allow Venus to automatically mount a volume into the
client’s name space when necessary. This mechanism is similar to crossing mount
points as supported in NFS version 4.
It is important to note that when a volume from the shared name space is
mounted in the client’s name space, Venus follows the structure of the shared
name space. To explain, assume that each client has access to the shared name
space by means of a subdirectory called /afs. When mounting a volume, each
Venus process ensures that the naming graph rooted at /afs is always a subgraph
of the complete name space jointly maintained by the Vice servers, as shown in
Fig. 10-5. In doing so, clients are guaranteed that shared files indeed have the
same name, although name resolution is based on a locally-implemented name
space. Note that this approach is fundamentally different from that of NFS.
Naming inherited from server's name space
Client A Server Client B
bin pkg
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 each
file in such a way that it can be tracked to its physical location, while at the same
time maintaining replication and location transparency.
610 DISTRIBUTED FILE SYSTEMS CHAP. 10
File server
VID1,
VID2
Server File handle
Server1
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 volume
replication 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 a
volume 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 that
uniquely 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 is
called, 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 provide
UNIX file-sharing semantics but instead support the weaker session semantics.
Given its goal to achieve high availability, Coda takes a different approach and
SEC. 10.2 THE CODA FILE SYSTEM 611
Session S A
Client
Close
Open(WR) File f
Client
Time
Session S B
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 the
rest and which consists of a collection of clients or servers, or both. The basic idea
is that series of file operations should continue to execute in the presence of con-
flicting operations across different partitions. Recall that two operations are said
to 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 shared
data items just before they are separated as the result of a partitioning in the net-
work. Ideally, a file system supporting transactional semantics would implement
one-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 those
operations on nonreplicated data items shared by the two processes. This concept
is discussed further in (Davidson et al., 1985).
We already came across examples of serializability in Chap. 5. The main
problem in the face of partitions is to recognize serializable executions after they
have 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 that
have been executed in each partition (possibly on shadow copies, i.e., copies of
files that were handed out to clients to perform tentative modifications analogous
to the use of shadow blocks in the case of transactions). It will then need to check
whether 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. A
typical session starts with explicitly opening a file by a call to open. Hereafter, a
SEC. 10.2 THE CODA FILE SYSTEM 613
series of read and write operations will generally follow, after which the session is
terminated 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 system
call is associated with a different session type. More complex session types are
the ones that start with a call to open. The type of a session is automatically
deduced from the system calls made by an application. An important advantage of
this approach is that applications that use the standardized VFS interface need not
be modified. For each session type, it is known in advance which data will be read
or modified.
As an example, consider the store session type, which starts with opening a
file f for writing on behalf of a specific user u, as explained above. Fig. 10-8 lists
the 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 necessary
to 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 becomes
much easier to recognize conflicting operations.
2 22222222222222222222222222222222222222222
1 File-associated data 1 Read? 1 Modified? 1
12 22222222222222222222222222222222222222222
1 1 1
12File identifier 1 Yes
22222222222222222222222222222222222222222 1 No 1
1 Access rights 1 Yes 1 No 1
12 22222222222222222222222222222222222222222
1 1 1
12Last modification time 1 Yes
22222222222222222222222222222222222222222 1 Yes 1
1 1 1 1
File length Yes
12 22222222222222222222222222222222222222222
1 1 Yes 1
112File contents 1 Yes
22222222222222222222222222222222222222222
1 1 1 Yes 11
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 by
considering a series of concurrent sessions that take place within a single network
partition. To simplify matters, assume that there is a single server contained in the
partition. When a client starts a session, the Venus process on the client machine
fetches 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. In
doing so, it effectively acquires the necessary read and write locks for those data.
There are two important observations to make at this point. First, because
Coda can automatically infer the type of a session from the (first) system call
made by an application, and knows the metadata that are read and modified for
each session type, a Venus process knows which data to fetch from a server at the
start of a session. As a consequence, it can acquire the necessary locks at the start
of a session.
The second observation is that because file sharing semantics are effectively
the same as acquiring the necessary locks in advance, the approach followed in
614 DISTRIBUTED FILE SYSTEMS CHAP. 10
In other words, an update from a client is accepted only when that update would
lead to the next version of file f. In practice, this means that only a single client
will eventually win having the effect that the conflict is resolved.
Conflicts arise if f is being updated in concurrently executed sessions. When a
conflict 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. In
terms of transactions, the session cannot be committed and conflict resolution is
left to the user. We return to this issue below.
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 is
done to achieve scalability. Second, caching provides a higher degree of fault
tolerance 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 is
transferred 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 had
fetched the file keeps track of which clients have a copy of that file cached
locally. A server is said to record a callback promise for a client. When a client
updates its local copy of the file for the first time, it notifies the server, which, in
turn, 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 callback
promise 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 an
outstanding callback promise at the server, it can safely access the file locally. In
particular, suppose a client opens a file and finds it is still in its cache. It can then
use that file provided the server still has a callback promise on the file for that
client. The client will have to check with the server if that promise still holds. If
so, 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 same
happens when B starts session SB . However, when B closes SB , the server breaks
its promise to callback client A by sending A a callback break. Note that due to the
transactional semantics of Coda, when client A closes session SA , nothing special
happens; 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 its
local copy of f to be invalid, so that it will have to fetch the latest version from the
server. On the other hand, when B opens session S′B , it will notice that the server
still has an outstanding callback promise implying that B can simply re-use the
local copy it still has from session SB .
Server Replication
Session S A Session SA
Client A
Open(RD) Close Close
Open(RD)
Invalidate
Server File f (callback break) File f
Open(WR)
Open(WR) Close Close
Client B
Time
Session S B Session S B
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 is
empty, the client is said to be disconnected.
Coda uses a replicated-write protocol to maintain consistency of a replicated
volume. In particular, it uses a variant of Read-One, Write-All (ROWA), which
was explained in Chap. 6. When a client needs to read a file, it contacts one of the
members in its AVSG of the volume to which that file belongs. However, when
closing a session on an updated file, the client transfers it in parallel to each
member 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 presence
of failures, things may go wrong. Consider a volume that is replicated across three
servers S1 , S2 , and S3 . For client A, assume its AVSG covers servers S1 and S2
whereas client B has access only to server S3 , as shown in Fig. 10-10.
Server Server
S1 S3
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 and
B will be allowed to open a file, f, for writing, update their respective copies, and
SEC. 10.2 THE CODA FILE SYSTEM 617
transfer their copy back to the members in their AVSG. Obviously, there will be
different versions of f stored in the VSG. The question is how this inconsistency
can 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 a
Coda version vector CVVi (f ) for each file f contained in that VSG. If
CVVi (f )[j ] = k, then server Si knows that server Sj has seen at least version k of
file f. CVVi [i ] is the number of the current version of f stored at server Si . An
update 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] for
each server Si . When client A reads f from one of the servers in its AVSG, say S1 ,
it also receives CVV 1 (f ). After updating f, client A multicasts f to each server in
its AVSG, that is, S1 and S2 . Both servers will then record that their respective
copy has been updated, but not that of S3 . In other words,
Coda has been designed for high availability, which is mainly reflected by its
sophisticated support for client-side caching and its support for server replication.
We have discussed both in the preceding sections. An interesting aspect of Coda
that needs further explanation is how a client can continue to operate while being
disconnected, even if disconnection lasts for hours or days.
Disconnected Operation
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. A
different approach is followed in Coda. There, a client will simply resort to using
its 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) when
disconnected will always succeed. However, it may be possible that conflicts are
detected when modifications are transferred to a server when connection is esta-
blished again. In case automatic conflict resolution fails, manual intervention will
be necessary. Practical experience with Coda has shown that disconnected opera-
tion generally works, although there are occasions in which reintegration fails due
to unresolvable conflicts.
The success of the approach followed in Coda is mainly attributed to the fact
that, in practice, write-sharing a file hardly occurs. In other words, in practice it is
rare for two processes to open the same file for writing. Of course, sharing files
for only reading happens a lot, but that does not impose any conflicts. These
observations 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, the
transactional semantics underlying Coda’s file-sharing model also makes it easy
to handle the case in which there are multiple processes only reading a shared file
at the same time that exactly one process is concurrently modifying that file.
The main problem that needs to be solved to make disconnected operation a
success, is to ensure that a client’s cache contains those files that will be accessed
during disconnection. If a simple caching strategy is followed, it may turn out that
a client cannot continue as it lacks the necessary files. Filling the cache in
advance with the appropriate files is called hoarding. The overall behavior of a
client with respect to a volume (and thus the files in that volume) can now be
summarized by the state-transition diagram shown in Fig. 10-11.
HOARDING
Disconnection Reintegration
Disconnection completed
EMULATION REINTEGRATION
Reconnection
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 is
connected to (at least) one server that contains a copy of the volume. While in this
state, 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
SEC. 10.2 THE CODA FILE SYSTEM 619
zero, bringing it into an EMULATION state in which the behavior of a server for
the volume will have to be emulated on the client’s machine. In practice, this
means that all file requests will be directly serviced using the locally cached copy
of the file. Note that while a client is in its EMULATION state, it may still be able
to contact servers that manage other volumes. In such cases, disconnection will
generally have been caused by a server failure rather than that the client has been
disconnected from the network.
Finally, when reconnection occurs, the client enters the REINTEGRATION
state 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 the
connection 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 the
cache 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 state
which files or directories he finds important by storing pathnames in a hoard
database. Coda maintains such a database per workstation. Combining the infor-
mation in the hoard database with information on recent references to a file allows
Coda to compute a current priority on each file, after which it fetches files in
priority 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 the
current priority of a file may change over time, and because cached files may
need to be removed from the cache to make room for other files, it is clear that
cache equilibrium needs to be recomputed from time to time. Reorganizing the
cache such that equilibrium is reached is done by an operation known as a hoard
walk, which is invoked once every 10 minutes.
The combination of the hoard database, priority function, and maintaining
cache equilibrium has shown to be a vast improvement over traditional cache
management techniques, which are generally based on counting and timing refer-
ences. However, the technique cannot guarantee that a client’s cache will always
contain the data the user will need in the near future. Therefore, there are still
occasions in which an operation in disconnected mode will fail due to inaccessible
data.
620 DISTRIBUTED FILE SYSTEMS CHAP. 10
Besides providing high availability, the AFS and Coda developers have also
looked at simple mechanisms that help in building fault-tolerant processes. A sim-
ple and effective mechanism that makes recovery much easier, is Recoverable
Virtual Memory (RVM). RVM is a user-level mechanism to maintain crucial
data structures in main memory while being ensured that they can be easily
recovered 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 survive
crash failures are normally stored in a file that is explicitly mapped into memory
when 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 close
to 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 perform
operations on that data that are part of a transaction. RVM is unaware of data
structures. Therefore, the data in a transaction is explicitly set by an application as
a range of consecutive bytes of the mapped-in file. All (in-memory) operations on
that data are recorded in a separate writeahead log that needs to be kept on stable
storage. Note that due to the generally relatively small size of the log, it is feasible
to use a battery power-supplied part of main memory, which combines durability
with 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 server
using secure RPC and system-level authentication. The second part deals with
controlling access to files. We will not examine each of these in turn.
Secure Channels
to Bob (as server), she sends her identity to Bob, along with a challenge RA , which
is encrypted with the secret key KA,B shared between Alice and Bob. This is
shown as message 1.
1
A, K A,B (RA )
2
K A,B (RA +1, R B )
Alice
Bob
3
K A,B (RB +1)
4 K A,B (K S )
check whether CT has been tampered with by doing an integrity check (of which
the computation requires Kvice ).
Whenever Alice wants to set up a secure channel with a Vice server, she uses
the secret token ST to identify herself as shown in Fig. 10-13. The session key KS
that was handed to her by the AS in the clear token is used to encrypt the chal-
lenge RA she sends to the server.
1
K vice (ST), KS (RA )
2
K S (RA +1, R B )
Alice
Bob
3
K S (RB +1)
4
K S (K S2 )
Figure 10-13. Setting up a secure channel between a (Venus) client and a Vice
server 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 and
proceed only if the token is currently valid.
A problem occurs when a client needs to be authenticated before it can access
files, but is currently disconnected. Authentication cannot be done because the
server cannot be contacted. In this case, authentication is postponed and access is
tentatively granted. When the client reconnects to the server(s), authentication
takes 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 reasons
of simplicity and scalability, a Vice file server associates an access control list
only 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 shown
in Fig. 10-14. Note that there is no right with respect to executing a file. There is
simple reason for this omission: execution of files takes place at clients and is thus
out of the scope of a Vice file server. Once a client has downloaded a file there is
no 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 a
user 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 access
rights. This approach has shown to be convenient in the light of immediately
SEC. 10.2 THE CODA FILE SYSTEM 623
2 22222222222222222222222222222222222222222
1 Operation 1 Description 1
12 22222222222222222222222222222222222222222
1 1
12Read 1 Read any file in the directory
22222222222222222222222222222222222222222 1
1 Write 1 Modify any file in the directory 1
12 22222222222222222222222222222222222222222
1 1
12Lookup 1 Look up the status of any file
22222222222222222222222222222222222222222 1
1 1 1
Insert Add a new file
12 22222222222222222222222222222222222222222
1 to the directory 1
12Delete 1 Delete an existing file
22222222222222222222222222222222222222222 1
1 1 1
12Administer 1 Modify the ACL of the directory 1
22222222222222222222222222222222222222222
Figure 10-14. Classification of file and directory operations recognized by
Coda with respect to access control.
revoking access rights of a misbehaving user, without having to first remove that
user from all groups.
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 02912
2
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, trac infor-
mation systems, electronic personalized newspapers, and entertainment delivery.
Dissemination-oriented applications have special characteristics that render tra-
ditional client-server data management approaches ineective. 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.
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 ecient
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 eorts. 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 eort.
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 specic request.
With push-based delivery, the server initiates the transfer.
The tradeos 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].
Pull Push
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.
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 specic 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 unidentied and unbounded set of clients can listen. This diers from
multicast in that the clients who may receive the data are not known a priori.
The tradeos 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 benets 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 Classication of Delivery Mechanisms
It is possible to classify many existing data delivery mechanisms using the char-
acteristics described above. Such a classication 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 predened 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
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].
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
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 dierent types (i.e.,
radar, satellite image, etc.) for dierent regions of the United States. Clients
can subscribe to updates for specic types of maps for specic regions. They
can also pose queries to obtain the most recent versions of specic 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.
application provides its own set of category denitions. 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 specication of
queries and proles. 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 specied) are sent to the client from
which the query originated. In contrast, proles 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 proles registered at that IB and the item is sent to
any clients whose prole indicates an interest in the item. Thus, proles 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.
Satellite
downlink
Satellite Link
SERVER
Broadcast
Clients
scanned scanned
portion portion
11111
00000
00000
11111
00000
11111
limit (REQcnt) 00000
11111
00000
11111
11111
00000
00000
11111
00000
11111
00000
11111
00000
11111
00000
11111
00000
11111
00000
11111 00000
11111
00000
11111
00000
11111 11111
00000
00000
11111
00000
11111
00000
11111 00000
11111
00000
11111 limit (1stARV)
00000
11111
00000
11111 00000
11111
00000
11111
00000
11111
00000
11111 00000
11111
00000
11111
00000
11111
00000
11111 00000
11111
00000
11111
11111
00000 11111
00000
00000
11111 00000
11111
11111
00000
00000
11111 11111
00000
00000
11111
00000
11111 00000
11111
00000
11111
00000 00000
11111
11111 00000
11111
still guaranteeing that the search will return the page with the maximum RxW
value.
In our experiments [Akso98], the pruning technique was shown to indeed
be eective { reducing the number of entries searched by 72%. While such a
substantial savings is helpful, it is probably not sucient 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 tradeos 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 dierent RxW variants through an
extensive set of performance experiments described in [Akso98].
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-
nents of a distributed information system. We have proposed the notion of a
Dissemination-Based Information System (DBIS) that integrates many dierent
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 dierent 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 eorts
are aimed at better understanding the challenges and tradeos that arise in the
development of such systems.
References
[Acha95a] S. Acharya, R. Alonso, M. Franklin, S. Zdonik, \Broadcast Disks: Data
Management 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
Proles 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.
[Gi90] D. Giord, \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.
[Imie94b] T. Imielinski, S. Viswanathan, B. Badrinath, \Energy Ecient Indexing on
Air", 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
International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008
Internet
VMAP
Virtual
Organization
Domain 4
MAP
Router
Domain 1 Domain N
Domain 2 Domain 3
Transport System
Application Application
TCP/UDP TCP/UDP
HMIPv6/IPv6 IPv6 IPv6 HMIPv6 IPv6 MIPv6 IPv6 IPv6
MIN
Link 4G 4G Link Link Link Link Link Link Link Link Link Link Link
802.11
MN 4G-AP Routers MAP Routers HA Routers CN
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 Fig. 5 Call-flow of the registration phase
domain belongs in the VO, the MAP is required to register with
the VMAP serving the VO. After registration, the VMAP C. Virtual Organization and Virtual Mobility Anchor Point
intercepts all packets addressed to the MH and tunnels them to Discovery
the MAP, and the MAP tunnels them to the MH. If the MH To perform the registration operation in section IV. B, a MH
moves into a different domain in a VO, new global address needs the following information:
(GCoA) binding with the VMAP is required. Usually, the MH - the prefix of the domain
will use the VMAP’s address as the GCoA and LCoA can be - the depth of the hierarchy
formed according to methods described in [2, 11]. After these - the network prefix of MAP
addresses are formed, the MH sends a regular MIPv6 binding - the domain in VO or Not
update to the MAP which binds the MH’s GCoA to the LCoA, This information is advertised by a new option used that we
and the MAP sends an extended MIPv6 binding update to the extended in the Router Advertisement message of the IPv6
VMAP which binds the MH’s virtual care of address (VCoA) Neighbor Discovery [12]. Fig. 6 shows extended router
to the GCoA. In response, the MAP sends a binding advertisement message format.
54
International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008
ICMP Fields:
O 1-bit "virtual organization" flag. When it is set, MHs use
to notice the domain is in VO
Packet multicast
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 Fig. 9 Call-flow of pre-registration
home address. Fig. 7 shows the call-flow of packet delivery.
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.
56
International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008
Fig. 11 shows how the total signaling costs are affected by protocol can eliminate unnecessary binding updates resulting
the distance between HA and AR in different domains within a from periodic movement at high speed. The performance
VO. Signaling costs of MIPv6 and HMIPv6 are same. Because evaluations have demonstrated the benefits of our proposed
of the handoff between domains, HMIPv6 must perform mechanisms. Our protocol has two advantages. First, it reduces
registration to the its HA. Signaling costs in proposed protocol the signaling overhead from BU on internet since the signaling
are steady and do not change in the same VO. messages corresponding to local moves do not cross the whole
Proposed protocol has more signaling cost than HMIPv6 in internet. Second, it reduces the packet loss by using proposed
fig. 10, but proposed protocol has less signaling costs in fig. 11. pre-registration scheme. Our proposed protocol can be applied
These results show that proposed protocol is suitable for inter to the usage of wireless internet on the train, subway, and high
domain handoff and fast movement. speed train (eg. TGV). In the future, we plan to implement these
Fig. 12 shows the effect of the call to mobility ratio (CMR) mechanisms and measure the performance of the real system.
on total signaling cost. Similar to the performance analysis in Further, we will discuss the issues of multiple transport system
the PCS network [14, 15], the CMR denotes the ratio of the and multiple VMAPs and supporting a vertical handoff on the
session arri-val rate to the BU rate. It can be represented as the proposed architecture.
ratio of packet arrival rate to the average subnet residence time,
i.e., CMR = λα t i from fig. 12, the proposed protocol has REFERENCES
[1] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support in IPv6", RFC
better performance compared to HMIPv6 when the CMR value 3775, June 2004.
is large. This is because the proposed protocol requires large [2] H. Soliman, F. Castellucia, K.E. Malki, and L. Bellier, "Hierarchical
signaling costs for constructing the VO at initial states. The mobile IPv6 mobility management (HMIPv6)", in Internet Engineering
Task Force, draft-ietf-mipshop-hmipv6-01.txt, 2004.
proposed protocol does not require location update to the HA
[3] R. Ramjee, T. La Porta, S. Thuel, K. Varadhan, L. Salgarelli, “HAWAII: a
after constructing the VO. 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,
Fig. 12 Effect of the call to mobility ratio on total signaling cost January 2004.
[9] Devarapalli V., Wakikawa R., Petrescu A., Thubert P. “NEMO Basic
Support Protocol”, in Internet Engineering Task Force, (work in
VI. CONCLUSION progress), draft-ietf-nemo-basic-support-02.txt, December 2003.
In this paper, we propose a new architecture for high speed [10] Ernst T., “Network Mobility Support Goals and Requirements”, in
Internet Engineering Task Force, (work in progress), draft-ietf-nemo
transport systems and a mobile management protocol for requirements-02.txt, Feb. 2004.
mobile internet users in transport systems. The proposed [11] S. Thomson and T.Narten. “IPv6 Stateless Address Autoconfiguration”,
architecture has several advantages and provides excellent in RFC 2462, December 1998.
[12] Narten, T., Nordmark, E., and Simpson, W., “Neighbor Discovery for IP
solutions to the problems raised by mobility and wireless Version6. (IPv6)”, in RFC 2461, December 1998.
environments. It could be using transport systems: automobile, [13] R. Chakravorty and I. Pratt. “Performance issues with general packet
train, subway, train express (TGV), etc. Thus, we define the radio service”, in Journal of Communications and Networks, 4(2),
December 2002.
transport system as a virtual organization (VO) and establish a [14] A. Stephane and A. H. Aghvami, “Fast handover schemes for future
fixed route transport system to the VO. We also classify wireless IP networks: a proposal and analysis”, in Proc. IEEE 53rd
mobility into VO mobility (intra VO) and macro mobility (inter Vehicular Technology Conf., 2001, pp. 2046–2050.
[15] Y. Wang, W. Chen, and J.S.M. Ho, “Performance Analysis of Mobile IP
VO). The handoffs in VO are locally managed and transparent
Extended with Routing Agents”, in Technical Report 97-CSE-13,
to the CH while macro mobility is managed with Mobile IPv6. Southern Methodist Univ., 1997.
From the features of the transport system, such as fixed route
and steady speed, we deduce the movement route and the DaeWon Lee received his B.E. degree in Electrical Engineering from
SoonChun-Hyang University and M.E. degree in Computer Science Education
handoff disruption time of each handoff. To reduce packet loss from Korea Univer-sity, Korea, in 2001 and 2003, respectively. He is currently
during handoff disruption time, we propose pre-registration a Ph.D. candidate in Com-puter Science Education from Korea University. His
scheme using pre-registration that registers MH’s suffix to all research interests are in Mobile computing, Distributed systems, and Grid
Computing.
MAPs of the VO at initial state. Moreover, the proposed
57
International Journal of Computer, Information, and Systems Science, and Engineering 2;1 © www.waset.org Winter 2008
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.
58
1
Abstract— This paper presents a mobile tracking scheme that exploits which incurs the minimum paging cost.
the predictability of user mobility patterns in wireless PCS networks. In- In particular, in the distance-based scheme, a mobile per-
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- forms location update whenever it is some threshold distance
locity is correlated in time to a various degree. Based on the Gauss-Markov away from the location where it last updated. For a system with
model, a mobile’s future location is predicted by the network based on the memoryless random-walk mobility pattern, the distance-based
information gathered from the mobile’s last report of location and veloc-
ity. When a call is made, the network pages the destination mobile at and scheme has been proven to result in less mobility management
around the predicted location of the mobile and in the order of descending cost (location update cost plus paging cost) than schemes based
probability until the mobile is found. A mobile shares the same predic- on time or number of cell boundary crossings ([4]).
tion information with the network and reports its new location whenever
it reaches some threshold distance away from the predicted location. We However, in practical systems, a mobile user usually travels
describe an analytical framework to evaluate the cost of mobility manage- with a destinations in mind, therefore mobile’s location and ve-
ment for the proposed predictive distance-based scheme. We then compare locity in the future are likely to be correlated with its current
this cost against that of the regular, non-predictive distance-based scheme,
which is obtained through simulations. Performance advantage of the pro-
location and velocity. The memoryless nature of the random-
posed scheme is demonstrated under various mobility and call patterns, walk model makes it unsuitable to represent such behavior. An-
update cost, page cost, and frequencies of mobile location inspections. other widely used mobility model in cellular network analysis
is the fluid-flow model ([16] and [17]). The fluid-flow model
is suitable for vehicle traffic in highways, but not pedestrian
I. I NTRODUCTION
movements with frequent stop-and-go interruptions. A discrete
In the operation of wireless personal communication service Markovian model is reported in ([4]). However, in this model,
(PCS) networks, mobility management deals with the tracking, the velocity of the mobiles is overly simplified and character-
storage, maintenance, and retrieval of mobile location informa- ized by three states only. In this paper, we introduce a Gauss-
tion. Two commonly used standards, the EIA/TIA Interim Stan- Markov ([15] and [13]) mobility model, which captures the
dard 41 in North America ([1]) and the Global System for Mo- essence of the correlation of a mobile’s velocity in time. The
bile Communications in Europe ([12]), partition their coverage Gauss-Markov model represents a wide range of user mobility
areas into a number of location areas(LA), each consisting of patterns, including, as the two extreme cases, the random-walk
a group of cells. When a mobile enters an LA, it reports to the and the constant velocity fluid-flow models.
network the information about its current new location (location In systems with correlated velocity mobility patterns, un-
update). When an incoming call arrives, the network simultane- like those with random-walk mobility patterns, the largest-
ously pages the mobile (terminal paging) in all cells within the probability location of a mobile is generally not the cell where
LA where the mobile currently resides. In these standards, the the mobile last reported. Thus a mobility management scheme
LA coverage is fixed for all users. Although dynamic LA man- that takes advantage of the predictability of the mobiles’ loca-
agement is possible ([16]), LA-based schemes, in general, are tion can perform better.
not flexible enough to adapt to different and differing user traf- In our proposed predictive distance-based mobility manage-
fic and mobility patterns. ment scheme, the future location of a mobile is predicted based
Dynamic mobility management schemes ([4] – [5]) discard on the probability density function of the mobile’s location,
the notion of LA borders. A mobile in these schemes updates which is, in turn, given by the Gauss-Markov model based on its
its location based on either elapsed time, number of crossed location and velocity at the time of the last location update. The
cell borders, or traveled distance. All these parameters can prediction information is made available to both the network and
be dynamically adapted to each mobile’s traffic and mobility the mobiles. Therefore, a mobile is aware of the network’s pre-
patterns, hence providing better cost-effectiveness than the LA diction of its location in time. The mobile checks its position
scheme. When the LA-s are not defined, upon call arrival, the periodically (location inspection) and performs location update
network pages the destination mobile using a selective paging whenever it reaches some threshold distance (update distance)
scheme ([14]), starting from the cell location where the mo- away from the predicted location. To locate a mobile, the net-
bile last updated and outwards, in a shortest-distance-first order. work pages the mobile starting from the predicted location and
With the assumption of a random-walk mobility model, this pag- outwards, in a shortest-distance-first order, and until the mobile
ing scheme is the same as a largest-probability-first algorithm, is found.
2
The cost of mobility management is defined as the sum of deviation x = , where is the asymptotic standard deviation
a mobile’s location update cost and the cost incurred in pag- of vn when n approaches infinity.
ing the mobile. We derive an analytical framework to evaluate Define the initial n = 0 as the time when a mobile last up-
the mobility management cost of the predictive distance-based dates its location and velocity. We can recursively expand (4) to
scheme, which is a function of the traffic and mobility patterns, express vn explicitly in terms of the initial velocity v0 ,
the update distance, the relative cost of location update versus
paging, and the location inspection frequency. The cost of the p nX
;1
non-predictive distance-based scheme is evaluated through sim- vn = n v0 + (1 ; n ) + 1 ; 2 n;i;1 xi : (5)
ulations, and is compared with the proposed predictive scheme. i=0
We find the performance gains of the predictive scheme based Define sn as the displacement of a mobile, at time n, from its
on the optimal updating distance that results in the minimum last updated location. By definition, s0 = 0. Furthermore,
mobility management cost.
In Section II, we describe the Gauss-Markov mobility model nX
;1
and the prediction algorithm, showing that the proposed scheme sn = vi : (6)
follows the rule of largest-probability-first. Section III presents i=0
the analytical framework for evaluating the predictive scheme. B. Mobility Tracking
The numerical results based on the analysis are presented in Sec-
tion IV, where we compare the mobility management costs of In most practical systems, a mobile cannot continuously mon-
both schemes and show the performance gains achieved by pre- itor its location or velocity1. Assuming that each mobile per-
diction. Finally, the concluding remarks are discussed in Section forms location inspection periodically, the optimal value of this
V. location inspection frequency is a variable, which depends on
the cost of the location and velocity checking process, which,
II. S YSTEM D ESCRIPTION in turn, depend upon many other factors such as the tracking
and paging methods involved, the communication channel us-
A. The Gauss-Markov Mobility Model
age, and the computational power of the mobile’s CPU.
We consider here a one-dimensional cellular system to Suppose the mobile examines its location every m clock ticks.
demonstrate the cost-effectiveness of the predictive scheme. We define
The multi-dimensional extension to this mobility model and the kmX
+m;1
and
= e; t (3)
Thus, a mobile’s location displacement from its last updated
location at its k th location inspection since the last location up-
where t is the clock-tick period (normalized to 1 throughout date is
kX
;1
this paper). Then the discrete representation of (1) is ([7])
skm;1 = yi (10)
p i=0
vn = vn;1 + (1 ; ) + 1 ; 2 xn;1 (4)
1 We will not address in this paper the exact mechanism by which a mobile
where 0 1, is the asymptotic mean of vn when n monitors its location and velocity. One possibility is for a mobile to use base-
approaches infinity, and xn is an independent, uncorrelated, and
station beaconing signals to determine its position, and to average position dis-
placement over time to find its velocity. Other methods and related references
stationary Gaussian process, with mean x = 0 and standard on mobile location and velocity determination can be found in ([9]).
3
which is also a Gaussian random variable with mean interval between two consecutive autonomous location updates
kX
;1 without the interruption of phone calls.
s = y : (11) Shifting the center of the PDF of yk and skm;1 to the origin,
k i
i=0 we define
than a distance threshold, N . When a call is made to a mobile, Then, in the predictive distance-based scheme, the mobile up-
the system pages the mobile in cells at and around the mobile’s date condition at the k th location inspection becomes
last reported location, in a shortest-distance-first order, and until
the mobile is found. jrk j > N (14)
In the proposed predictive distance-based scheme, a mobile
reports both its location and velocity as part of the location up- and the following recursive equation holds between location up-
date process. Thus, both the PCS network and the mobile make dates:
the same prediction of the probability distribution of s km;1 for rk = rk;1 + wk;1 : (15)
any k . A mobile transmits a location update to the PCS net-
work at the k th location inspection if jskm;1 ; sk j is greater Next, we derive a recursive formula to find w k . Defining Cij
than a distance threshold , N . When a call is made to a mobile, as the auto-covariance of wk ,
the system pages for the mobile in cells at and around sk , in a
shortest-distance first order, and until the mobile is found. Here,
Cij = Ewi wj ] (16)
we have assumed that the call arrival intervals are much greater the PDF of wk is completely determined by Ckk .
than the location inspection interval, such that we can assume
Furthermore, we have the following recursive relation
that calls arrive at the end of location inspection intervals.
Let s0km;1 be a random variable representing a mobile’s lo- s
Ck2;1k
cation displacement, at the k th location inspection, from its last wk = CCk;1k wk;1 + 1 ;C zk;1 (17)
reported location, given that the mobile has not performed lo- k;1k;1 k;1k;1 Ckk
cation update up to the k th location inspection. Since, with-
out consideration of location updates, s km;1 is Gaussian with where zk;1 is a Gaussian process, independent of wk and with
variance equal to Ckk . Equation (17) can be justified by verify-
mean sk , and the location update process affects the proba-
ing that
bility density function (PDF) of a mobile’s location symmet-
rically around sk , the optimal prediction of s0km;1 , in terms Ewk ] = 0 (18)
of the largest probability, is still sk . Furthermore, since the
probability density of s0km;1 ramps down symmetrically around Ck;1k
Ewk wk;1 ]
sk , the predictive distance-based paging scheme is a largest- =
Ck;1k;1 Ck;1k;1 (19)
probability-first scheme, which satisfies the requirement of min- = Ck;1k
imum cost selective paging. Therefore, we can expect the pre-
dictive scheme to incur lower mobility management cost than and
the non-predictive distance-based scheme 2 . !
In the next section, we introduce an analytical framework Ck2;1k Ck2;1k
Ewk2 ] 1;
to evaluate the mobility management cost of the predictive =
Ck2;1k;1 Ck;1k;1 + Ck;1k;1 Ckk Ckk
distance-based scheme.
= Ckk : (20)
III. C OST E VALUATION OF THE P REDICTIVE
D ISTANCE -BASED M OBILITY M ANAGEMENT S CHEME The auto-covariance of wk in (17) can be computed as fol-
lows. Since
A. PDF of Time Interval between Two Consecutive Autonomous
Location Updates Ckk Eyk2 ] ; 2yk
Since within a phone call duration, the position of a mobile is
=
20 1 3 (21)
6 p kmX
+m;1 X
2
i;1
closely monitored, a call arrival has the same effect as a mobile
location update. Here we distinguish a location update based
= E 4@ 1 ; 2 i;j;1 xj A 75
on distance as autonomous update. We first consider the time
i=km j =0
2 Paging delay constraints and reliability considerations are not addressed
exchanging the order of the above double summation, and then
here. For systems with paging delay constraints, the proposed scheme can be dividing it into two independent parts, we have
easily 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. Ckk = (1 ; 2 )E(A + B )2 ] (22)
4
0km;m;1 km;1 !
@ X X i;j;1 kmX
where +m;1
i ; j ; 1
X;1
km kmX
+m;1
j =0 i=km;m i=km
A = xj ;j;1 i 0 11
j =0 i=km X;2 @kmX;1 i;j;1 kmX
km +m;1
kmX +m;2 kmX
+m;1 + i;j;1 AA
B = xj ;j;1 i : (23) j =km;m i=j +1 i=km
j =km i=j +1 (1 ; ) ( ;
m 2 2 km ;m)
= 2 ; )2 : (28)
Since both A and B are summations of independent zero-mean (1
Gaussian variables, r
C ;1 ; C ;C1 ;;11 C zk;1 ,
2
0km+m;1 12 Defining k = C ;1 ;1 and uk =
k k
1
k k
X
km ;1 X iA k k k k k k
kmX
+m;2 X iA
EB 2 ] = 2 ;2j;2 @ : (25) fw (w) = 1 fw ;1 (w=k ) fu (w) (30)
j =km j =j +1
k
k k k
Cancelling out uncorrelated products and combining the inde- We consider location updates between two successive call ar-
pendent Gaussian random variables, we have rivals. As shown in Figure 1, the i.i.d. location update time in-
tervals comprise a renewal process with the probability density
Ck;1k = (1 ; 2 )2 function f (t).
5
? ? - t
i=1
X
1 X
1
call call = iF (i) (t) ; i ; 1)F (i) (t)
(
i=1 i=2
Fig. 1. Renewal Process between Two Successive Call Arrivals X
1
= F (i) (t) : (40)
i=1
Let’s consider one location update. Assume that the next au-
tonomous location update is at time tu and that the next call ar- From (40), the average updating cost per unit time can be
rives at time , where < tu . The probability density function obtained by
of given that is less than tu is Z1
Cupdate = Cu e;t M (t)dt (41)
p j<t (t) = e;t u(tu ; t) (32)
0
the minimum Ctotal for the predictive scheme. Thus, the pre-
dictive performance gain is a function of six independent vari- 6
Cmin(non−pred) / Cmin(pred)
4.5 µ=101
tail, while the variables in the other group are fixed. Due to
space limitations, we show here only the plots of the perfor- 4
takes the values f10;2 10;1:5 10;1 10;0:5 100 100:5 g. This
corresponds to the memory factor = e ; taking the val-
1.5
ues f0:99 0:96 0:90 0:73 0:37 0:042g. For the various curves, 1
takes a value from f0 10;1 10;0:5 100 100:5 101 g. These
−2 −1 0 1
10 10 10 10
β
plots demonstrate that the performance gain is a concave func-
tion of . On the one hand, when is small, the user mobility Fig. 2. Performance gain vs. and for = 0:01, C = 100 5 , m = 10,
:
=05
u
has high memory level, which favors the predictive scheme. On and :
the other hand, when is large, is small, and from (27), C kk
reaches a local minimum, m 2 , at = 0. Therefore, in this
case, the disadvantage of the non-predictive scheme is mainly 12
once in the cell of the predicted location, since the mobile never µ
needs to update its location.
Figure 3 presents the plots of the performance gain versus , Fig. 3. Performance gain vs. and for = 0:01, C = 100 5 , m = 10,
for various values of , and with fixed = 10 ;0:5 ( = 0:73).
:
and ;0:5 ( : ) = 10 = 0 73
u
Here takes the values f0 10;1 10;0:5 100 100:5 101 g . For
the various curves, takes a value from f0:1 0:5 1 5 10g.
These plots demonstrate that the performance gain is an increas- unity for all in the interval [0.1, 10].
ing function of , for not too much larger than . When is Figure 4 shows the plots of the performance gain versus ,
much larger than , as discussed in the previous figure, the mo- for various values of , and with fixed = 1. Here takes
bility pattern is close to the fluid-flow model, and the savings by the values f0:1 0:5 1 5 10g. For the various curves, takes
prediction are maximal and independent of the mobile’s veloc- a value from f10;2 10;1:5 10;1 10;0:5 100 100:5 g. These
ity. The asymptotic standard deviation, , represents the uncer- plots demonstrate that the performance gain is a faster-than-
tainty in a mobile’s velocity. Here we see that the performance exponential decreasing function of ; this observation is in
gain is maximum when is small, but there is little performance agreement with the results from the previous graph. Here we
gain when the magnitude of is close to or larger than . For see again that the cost gain is a concave function of , and is
example, when = 0:1 and = 10, a performance gain greater large when is either large or small.
than 10 is achieved, but when > 5, the performance gain is In Figures 5-7, we study how the parameters ( C u m) af-
7
15 4.5
−2
β=10 Cu=10−1
−1.5
β=10 4 Cu=10−0.5
β=10−1 Cu=100
β=10−0.5 Cu=100.5
β=100
Cmin(non−pred) / Cmin(pred)
Cmin(non−pred) / Cmin(pred)
3.5 Cu=101
10 β=100.5 Cu=10
1.5
2.5
5
2
1.5
0 1
−1 0 1 −3 −2 −1
10 10 10 10 10 10
σ λ
=1 =5
u
and and m
plots also suggest that the predictive scheme gives larger cost
savings when the cost per location update is larger.
Figure 6 shows the plots of the performance gain versus C u ,
1
various curves, m takes a value from f2 5 10 20 40g. These
−1 0 1 2
10 10 10 10
Cu
plots demonstrate that, except in the extreme case when m is
very large, the predictive performance gain is an approximately
Fig. 6. Performance gain vs. Cu and m for = 0:5, = 0:5, = 10;0:5 ,
linearly increasing function of the location update cost; this ob- and = 0:01
servation is in agreement with the results from the last figure.
There are sharp turns in the curves with m = 20 and m = 40.
This is because, for these two values of m, when Cu is rela- value from f10;3:510;3 10;2:5 10;2 g. These plots demon-
tively small, the obtained optimal update distance is 1 cell size strate that the performance gain is an approximately linearly
for both the predictive scheme and the non-predictive scheme. decreasing function of the location inspection period. There-
In this case, since, in our analysis, the distance is quantized in fore, the prediction scheme favors a system where the mobiles
units of a cell, the exact update distance is not well defined here. frequently monitor and update their locations. However, since
These curves also suggest that the performance gain is larger using prediction incurs more computation and communication
for smaller location inspection periods. This is studied in more cost for each location inspection, there exists a trade-off between
detail in the next figure. the extra cost due to frequent location inspection and the amount
Figure 7 presents the plots of the performance gain versus m, of performance gain, which should be considered when design-
for the various values of , and with fixed C u = 1. Here m takes ing the optimal location inspection frequency for the proposed
the values f2 5 10 20 40g. For the various curves, takes a predictive system.
8
Abstract
In this paper we present a different view on the broadcast channel that
fits better an asynchronous setting, where each receiver can “listen” to the
broadcasted data at different time intervals. In the scenario we suggest,
there is a “static” fixed amount of data, that needs to be transmitted
to all receivers. Each receiver wants to minimize the receiving time, and
this way to get the static data at the highest possible rate. We define
the capacity region for this scenario, show a coding theorem, and provide
a few examples. We finally point out several further work and possible
extensions 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 result
says that it is possible to transmit at a higher rate than that is achieved by
time-sharing the channel between the receivers. In a typical situation, there is
a common information that is needed to be transmitted to all receivers. Under
the classical broadcast channel scenario, a receiver that listen to the transmitted
information through a better channel can get more information than the other
receivers. The capacity region in this case defines the highest possible extra
information rate to the better receiver.
Suppose, however, that we only have a common information and there is no
extra information to be transmitted to the better receiver(s). In the classical
broadcast scenario, the maximum possible rate that this common information
can be transmitted is determined by the “worst” channel. The better channels
have to “listen” to redundant information. Clearly, there must be a better
solution.
In this work we define and analyze the static broadcast channel. In this
broadcasting scenario, the sender has only a fixed common information it has
1
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 the
receiver has used to retrieve these bits (or, divided by the information gathering
time). Under this definition, in principle, a receiver that listen through a better
channel, may gather less channel symbols in order to estimate the transmitted
message, and by this to increase its rate. In the saved time it can fetch more
information from other transmitters. The term static broadcasting is due to the
notion that the core information the transmitter sends is fixed, static, needed
for all transmitter, and does not change.
We define the capacity region of the static broadcast channel, and prove a
coding theorem (direct and converse) for it. Interestingly, as explained below,
the capacity region may be non-convex, since the notion of time-sharing is not
valid in this asynchronous setting. In addition, we discuss the structure of good
codes that can attain this capacity.
K
where ni = b R i
c, and I(P ; W ) is the mutual information between the input and
output of a DMC channel with input prior P and transition probability matrix
W.
The proof of the Theorem is quite straight forward. The converse is essen-
tially the standard converse of the channel coding theorem, implemented over
the portion of the received symbols of each receiver. As for the direct, we use
2
a random code, drawn according to the chosen priors. It is easy to see that
the standard technique of [2] is generalized for a choice that is independent but
not necessarily identically distributed, and that the error probability can be
bounded for each receiver, based on its portion of received data.
Note that in determining the boundaries of the capacity region we look for
the largest rates that satisfy (1). Since I(P ; W ) is a concave function of P , a
point (R1 , . . . , Rd ) on the boundary, where we assume without loss of generality
that n1 ≤ n2 ≤ . . . ≤ nd , is attained with a sequence of priors Pt that change
in time only after one of the receivers “quit listening”, i.e., Pt is a constant Pi
for all ni−1 + 1 ≤ t ≤ ni .
K = n1 I(P ; W1 )
K = n1 I(P ; W2 ) + (n2 − n1 )C2
3
2 BSCs
0.5
0.4
BSC channel, p=0.11
0.3
0.2
0.1
0
0 0.2 0.4 0.6 0.8 1
BSC channel, p=0
Figure 1: Static broadcast capacity region for 2 BSC channels with different
crossover probabilities. Classical broadcast capacity region with dashed line.
4
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 not
forced to be synchronously and simultaneously connected to the transmitter.
Actually, the fact that there are various possible definitions of the capacity for
the broadcast channel, depending on the subset of time the data is received has
also been observed in, e.g., [4]. The setting we propose is novel. Clearly the
capacity region of the classical broadcast channel is contained in our capacity
region, since any scheme for simultaneous transmission is acceptable for our
scenario, although it is not optimal in most cases since the rate can increase by
allowing the freedom to choose the portion of the received time interval.
A naive approach for utilizing the possibility to choose the receiving time
interval 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 transmit
to one receiver, with effective rate equals to its capacity, then transmit to the
second channel, and so on. Since the second receiver had to wait for the end
of the transmission to the first receiver, the effective rates in this scenario for
these two receivers are
C1 C2
R1 = C1 and R2 = .
C1 + C2
Clearly, our approach is superior and leads to a higher rate since the receivers
are never “on hold”.
A more general situation, which is practically interesting, occurs, say, with
IP multicasting in the Internet. In this case we wish to allow the receivers to
receive the data starting from any arbitrary point, and get the information at
the minimal possible time interval. In our setting we restricted the time intervals
of all receivers to begin at the same time point. Our setting can be generalized
to include an arbitrary initial point for each receiver. In this case, however, we
cannot allow codes whose structure depends on time. Thus, it is expected that
the formulas for the capacity region will be the same as (1), but with a constant
input prior that cannot change at specific times.
The codes we have suggested are block codes, with a block length that fits
the time needed to let the last receiver enough data to decode the information.
In some situations, the transmitter may be unaware of the various channels
he broadcasts to. In this case, we have to design a code that translate the
information bits into, possibly, infinite transmission.
The previous situation may occur when we use the broadcast channel to
model universal communication to an unknown channel. If the receiver can
indicate back to the transmitter that it received the data correctly, our static
broadcast scenario leads to a communication solution over the unknown (or
compound) channel, that reliably works at a higher rate than that guaranteed
by 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
may complicate the receiver, but it is possible without increasing the rate (and
even without affecting the error probability in an exponential matter). Universal
decoding together with possible infinite transmission can be used as a complete
solution for universal communication.
These issues of relating our scenario to various practical and theoretical
problems in broadcast and in communication over unknown channels, including
the analysis of the error performance in these situations is now under active
research [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.
[5] Imre Csiszàr and Jànos Körner. Information Theory. Academic Press, New
York, 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.
6
Capacity region of 2 languages with 31 words
4.5
3.5
Japanese listner
2.5
1.5
0.5
0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
Hebrew listner
7
The Cellular IP
Internet, Mobile IP
Interdomain handover
Figure x. Inter- and intra domain hadovers
After power up a mobile host has to register to the Cellular IP network, which means
that it has to set up a routing path from the gateway router to its current attachment
point. This is done in a reverse manner by sending a route update message from the
mobile host to the gateway router. The route update message is received by the base
station and forwarded hop-by-hop following the uplink neighbours of each Cellular IP
node towards the gateway router. Each Cellular IP node maintains a route cache in
which it holds host based routing entries. Whenever a route update message passes a
Cellular IP node, a routing entry for the related mobile host is written in the cache. The
so called host based entries map a mobile host’s IP address to the interface from which
the packet arrived at the node. When the route update message arrives at the gateway
router, 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 mobile
host constitutes a reverse path for packets addressed for that mobile host. The routing
entries in the Cellular IP nodes are soft state. This means, after a certain expiration
time they are not valid any more. This is necessary since due to a link loss a mobile
host might not be able to tear down its routing entries before leaving the network. In
order not to lose its routing path, a mobile host has to refresh its routing entries
periodically. In Cellular IP this is done by a regular data packet or by sending a route
update message if the mobile host has no data to transmit.
Mobile hosts that are not actively transmitting or receiving data (idle state) but want to
stay reachable, have the opportunity to maintain paging cache entries. A mobile host
with installed route cache entries is said to be in active state. Paging caches are not
necessarily maintained on each Cellular IP node and have longer timeout values. On
Cellular IP nodes, where both a route and a paging cache are maintained, packet
forwarding in downlink direction is done in the same way for routing and paging with
priority to the route cache entries. If a Cellular IP node, that does not maintain a
paging cache, receives a downlink packet for a mobile host for which it has no routing
entry in its route cache, it broadcasts the packet to all its downlink neighbours. By this
mechanism groups of several, usually adjacent base stations are built in which idle
mobile hosts are searched when a packet has to be delivered to them. Those groups of
base stations are called paging areas.
Cellular IP provides two handover mechanisms: A hard handover and a semi-soft
handover mechanism. For a hard handover, the wireless interface of a mobile host
changes from one base station to another at once. For the semi-soft handover the
mobile host switches to the new base station, transmits a route update message with a
flag indicating the semi-soft handover and returns immediately to the old base station
in order to listen for packets destined to it. The route update message reconfigures the
route caches on the way to the gateway router as usually, except for the route cache on
the cross-over node, where the new path branches off from the old path. In that node
downlink packets are duplicated and sent along both paths until a new route update
message.
TDK
In our Student Research Society Project Report we gave an overview of three micro
mobility protocols. These protocols are the Cellular IP, the HAWAII (Handoff-Aware
Wireless Access Internet Infrastructure), and the Hierarchical mobile IP. We studied
the performance of these protocols through a numerical example based on the
following parameters:
• packet delays
• number of mobility related messages
• packet loss
We calculated the effect of the number of mobile hosts and their velocity to the
parameters above. After that we simulated the three protocols using the Columbia IP
Micro-Mobility Suite, which is based on the NS-2 toolkit.
At the end of the semester we began to develop our own simulation. We chose the
OmNet++ Discrete Event Simulation System. We will implement the two main
micromobility protocols: Cellular IP and HAWAII. We needed to create a network
topology using the NED (Network Description) language. Our test domain consist of a
gateway router, five additional routers and six base stations. In the network there is a
mocromobility domain, an Internet host modelling the whole network outside the
domain, and five mobile hosts. Between the mobiles and base stations we use an "Air"
object modelling the radio interface and handle the movement of mobiles. The test
domain topology can be seen in figure x.
Gateway router
Router Router
BS BS BS BS BS BS
The OmNet++ environment provides a Tcl/Tk based graphical animation tool for
viewing network simulation traces. It supports topology layout, packet level
animation, and various data inspection tools. We can see the implemented domain and
netwrok using this tool in figure x.
We divided the area covered by the six base stations into two paging areas, see figure
x.
0
x
However, further work has to be undertaken in order to complete the architecture and
protocol implementation. We must realize the functions of the objects in our network.