Broadcast data delivery is used in most wireless systems to disseminate date items to all mobile elements inside a cell. This form of data delivery is different from the one in traditional client/server systems.
The data delivery in a traditional client/server system is pull-based: a client makes an explicit request to the server. The server receives the request, locates the information of interest and returns it to the client. And in most case point-to-point connection is employed - the communication channel between the server and a client is dedicated. However, it mainly suffers two problems: 1) Backchannel congestion. In many environments, the backchannel (channel from the client to the server) is limited in bandwidth and can easily become a bottleneck. 2) Server saturation. The server must be continually interrupted to react to the client backchannel requests. Thus as the number of clients increase, eventually the server will become saturated.
In contrast, broadcast data delivery is usually push-based. (Some systems also employ pull-based broadcast which we will introduce in the next section). In push-based data delivery, the server repetitively broadcasts data to a client population without a specific request. Clients monitor the broadcast and filter what they need. It has three-fold advantage: 1) Efficiency. Data is transferred only as needed e.g. when new data is created or if updates take place. Thus client and server processing are minimized which can eventually lead to better performance. 2) Scalability. It is independent of the number of users the system is serving. Moreover, once data items are broadcast, all the client in the coverage receive them simultaneously. Thus the latency is reduced. 3) Lower bandwidth utilization. By avoiding unnecessary data transfer, both the uplink and downlink bandwidth is saved. This is particularly useful for asymmetric environments. Moreover, in the context of mobile computing, the broadcast channel can be considered as ?storage on the air? - mobile clients access data items on the air just like they access them in the memory or disk storage. Thus the constraint of resource-poor in term of memory size and disk capacity faced by mobile clients can be alleviated somehow.
Several issues that arise in broadcast data delivery systems: 1) On the server's side, how to decide what to broadcast and how to organize and schedule the broadcast items to minimize the average response time 2) On client?s side, how to manage user's memory to reduce the mismatch between the broadcast schedule and the user's access pattern.
And 3) How to handle updates to maintain data consistency.
In a mobile environment, the available bandwidth is quite low, user devices are typically portable computers with limited processor speed, memory size, disk capacity and battery lifetime. In order to apply broadcast technology to mobile computing, these constraints of mobile computing should be considered. Thus, strategies to deal issues should also try to minimize the energy usage, to tolerate disconnection or weak connection and etc.
In this paper, we discuss issues that arise in broadcast data delivery systems and overview some strategies to tackle them. We highlight strategies in favor of mobile computing. However, detailed algorithms and their analysis are not our concerns