Admission Control-Based Multichannel Data Broadcasting for Real ...

1 downloads 0 Views 2MB Size Report
Index Terms—Admission control, broadcasting, real time sys- tems, channel allocation, multi-item queries. I. INTRODUCTION. IN WIRELESS/MOBILE network ...
IEEE TRANSACTIONS ON BROADCASTING, VOL. 60, NO. 4, DECEMBER 2014

589

Admission Control-Based Multichannel Data Broadcasting for Real-Time Multi-Item Queries G. G. Md. Nawaz Ali, Student Member, IEEE, Victor C. S. Lee, Member, IEEE, Edward Chan, Minming Li, Member, IEEE, Kai Liu, Member, IEEE, Jingsong Lv, and Jun Chen

Abstract—Owing to its potential to satisfy all outstanding queries for the same data item with a single response, on-demand data broadcast becomes a widely accepted approach to dynamic and scalable wireless information dissemination. In some emerging applications, such as road traffic navigation system, users may query multiple data items which have to be received before a deadline. However, in existing works, a client only knows that its query is satisfied when it receives all the required data items or not satisfied when the deadline expires. In this paper, admission control is introduced in data broadcast systems such that clients can be informed in a timely manner. On the one hand, when a query has no hope to be satisfied, it is a waste of time and resources for the client listening to the channels. Instead, an early notification allows the client to take prompt remedial actions to recover the situation. On the other hand, when a query has a very high chance to be served before its deadline, an early guarantee provides a better quality of service to the client. Furthermore, a matching-based allocation scheme is proposed to maximize data sharing among queries and minimize switching among channels in multichannel architectures. Extensive simulations are performed to analyze the validity and efficiency of the proposed admission control and channel allocation schemes on existing scheduling algorithms in a wide range of circumstances. Index Terms—Admission control, broadcasting, real time systems, channel allocation, multi-item queries.

I. I NTRODUCTION N WIRELESS/MOBILE network environments, data broadcasting is an increasingly popular method of information dissemination due to its potential to satisfy all outstanding

I

Manuscript received July 16, 2013; revised May 14, 2014; accepted August 3, 2014. Date of publication November 13, 2014; date of current version December 5, 2014. This work was supported by a grant from the Research Grants Council of the Hong Kong Special Administrative Region, China under Project CityU 115312. (Corresponding author: K. Liu.) G. G. M. N. Ali is with the Department of Computer Science and Engineering, Khulna University of Engineering and Technology, Khulna 9203, Bangladesh, and also with the Department of Computer Science, City University of Hong Kong, Hong Kong (e-mail: [email protected]). V. C. S. Lee, E. Chan, and M. Li are with the Department of Computer Science, City University of Hong Kong, Hong Kong (e-mail: [email protected]; [email protected]; [email protected]). K. Liu is with the College of Computer Science, Chongqing University, Chongqing 400040, China (e-mail: [email protected]). J. Lv is with Anhui USTC iFlytek Company Ltd., Hefei 230088, China (e-mail: [email protected]). J. Chen is with the School of Information Management, Wuhan University, Wuhan 430072, China (e-mail: [email protected]). Color versions of one or more of the figures in this paper are available online at http://ieeexplore.ieee.org. Digital Object Identifier 10.1109/TBC.2014.2364533

queries for the same data item with a single response [1]–[3]. In principle, data broadcasting can accommodate arbitrary populations of clients with common interests. However, with the rapidly increasing population of mobile users and realtime applications, data demand from clients becomes more intractable in real-time data broadcast systems. Firstly, large data demand results in a large database on the server side. Hence a static push-based broadcast program generated from historical data access statistics or a set of pre-determined query profiles cannot work well to achieve optimal performance. Therefore, on-demand broadcast is more appropriate. However, on-demand broadcast requires online data scheduling, for which optimal or near-optimal performance is hard to achieve. A significant amount of effort has been made in the literature to propose different online data scheduling algorithms [1], [4]–[12]. Secondly, in many emerging applications, such as the road traffic navigation system in vehicular ad hoc networks (VANETs), clients may request multiple dependent data item at a time [13]. For example, it is very common that vehicles will request real-time traffic information of several alternative routes to estimate the best route to a destination. Moreover, the best route must be produced by the query and returned to the driver in time. Otherwise, it would be too late for the driver to take the advised route. This corresponds to the concept of real-time multi-item queries, where the query must receive all the requested data items in time in order to be processed completely before the deadline. Such real-time multi-item queries cause more complication to achieve satisfactory real-time performance in on-demand broadcast systems. Thirdly, although multi-channel architecture increases available bandwidth, it complicates bandwidth sharing among different channels and clients can retrieve only one data item from one channel at a time [14]. Based on the above three points, it is not hard to understand that achieving good performance for real-time multi-item queries in ondemand multi-channel data broadcast systems is an interesting but challenging problem. Admission control is a common quality of service (QoS) provisioning strategy of network congestion control for high-speed wired networks [15]–[19] and wireless networks [20]–[28]. In high-speed wired networks, trafficdescriptor based admission control and measurement-based admission control are two main call (or connection) admission control (CAC) schemes to achieve high bandwidth efficiency

c 2014 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. 0018-9316  See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

590

IEEE TRANSACTIONS ON BROADCASTING, VOL. 60, NO. 4, DECEMBER 2014

and low cell (packets are divided into fixed-size cells) loss ratio (CLR) [18]. For example, multimedia asynchronous transfer mode (ATM) network can integrate video, audio, data and other services [16]. To ensure specified QoS target, such as CLR, measurement-based admission control with multi-QoS buffer management scheme is applied to both best-effort service classes and guaranteed service classes [15]. To achieve low CLR and transmission delay, Jagannathan and Talluri [19] propose an auto regressive moving average based adaptive admission control system in ATM networks. A fuzzy logic based CAC system is presented to deal with the congestion problem in ATM networks in [17]. Ali et al. [16] propose an adaptive CAC system which can support heterogenous traffic characteristics. In wireless (mobile) networks, blocking new and handoff calls differentially with different probabilities results in different call admission control schemes [20], [21], [27]. Most of these admission control schemes rely on guard channels, which are reserved for handoff calls. The goal of these schemes is to limit the number of call connections into the network so that network congestion and call dropping can be reduced. Due to different assumptions about the channel holding time distributions of new and handoff calls, one-dimensional and multidimensional Markov chain were used to obtain corresponding blocking probabilities in [20] and [21], respectively. Chowdhury et al. [27] propose a call admission control scheme that relies on adaptive multi-level bandwidth-allocation scheme for non-real-time calls. The proposed scheme reduces call dropping probability by releasing some bandwidth from the already admitted non-real-time traffic calls. Some admission control schemes similar to the wired measurement-based schemes are discussed in [22] and [23] for satellite networks. Tzeng and Huang [24] discuss the threshold-based admission control schemes, single-threshold and multiple-threshold call admission control schemes. Kwan et al. [25], study the related issues of preemption coupled with admission control in Long Term Evolution (LTE) networks. Spenst et al. [26] propose a post-admission control system to improve the network performance and users’ experiences in Wi-Fi Multimedia (WMM) networks. The problem of joint admission control and power allocation in the interference-limited CDMA wireless networks is addressed in [28]. Although various works on admission control have been done for connection-oriented congestion control in wired and wireless networks, to the best of our knowledge, little has been done for data broadcast systems [4], [6]. In real-time applications, queries have deadline constraints and missing deadlines means failures for the queries. Conventionally, the server must process all submitted queries until their deadlines expire. Moreover, clients must also wait until deadlines in case their queries cannot be satisfied. This will waste both processing resources of the server and battery power of the mobile devices that are used for listening to the channels. More importantly, an early notification about the failure of a submitted query allows the client to take prompt remedial actions to recover the situation. Even if a query can be satisfied before its deadline the client has no idea about the result until all data items in the query have been transmitted. This will seriously degrade

client experience and quality of service. To save resources and to provide QoS guarantee to clients, admission control is introduced to real-time data broadcast systems. In summary, the main objective of this work is to inform the clients about the fate of the submitted queries as early as possible, namely to achieve QoS, without jeopardizing the system performance. We have previously done some preliminary work in this area [29]. However, the major drawback of that paper was that the admission controller could only reject a query which has no chance to be served but fail to admit queries. In other words, no guarantee can be provided to clients to serve their queries before deadlines. In this paper, we propose enhancements to fix this major drawback and demonstrate the effectiveness of our scheme using extensive simulations. We summarize the major contributions of this paper as follows: 1) Firstly, an admission control scheme called ILAC is proposed to provide prompt notification about the rejection or admission decision of a submitted query to the corresponding client. This scheme not only provides better QoS to clients, but also saves resources at both server and client sides. 2) Secondly, a bipartite weighted matching model is proposed for allocating channels to admitted queries in order to maximize data sharing among clients. The well known primal-dual method is modified to solve the problem of the weighted matching. Based on the result of the weighted matching, a dynamic programming technique is utilized to minimize switching among channels. For performance comparison, randomized allocation schemes are also proposed and discussed. 3) Thirdly, three groups of algorithms that integrate the traditional scheduling algorithms, the proposed admission control and the channel allocation algorithms are presented, discussed and evaluated. The rest of the paper is structured as follows. Section II shows the overview of the system. Section III discusses the issues of admission control for real-time data broadcast and proposes an admission control scheme: ILAC. Section IV builds a bipartite weighted matching model for channel allocation and discusses the solution: primal-dual method. The optimization of switching among channels is also discussed to reduce the switching cost. Moreover, some randomized allocation schemes are discussed. Section V describes the simulation environment and the adopted performance metrics. Section VI shows the simulations results and discussions of the performance of the analyzed algorithms. Section VII concludes the paper.

II. M ODEL AND P RELIMINARIES The system model consists of a single server and multiple clients (Fig. 1). Each client submits a multi-item query with a deadline at a time to the server through an uplink channel. A query is satisfied only when all the required items are received by the corresponding client before the deadline. Otherwise, it is missed. A data item can be considered as a fixed-size page in the database that is maintained

ALI et al.: ADMISSION CONTROL-BASED MULTICHANNEL DATA BROADCASTING FOR REAL-TIME MULTI-ITEM QUERIES

Fig. 1.

591

System model.

by the server. The time taken to broadcast a data item is called a time slot. The server corresponds to the queries, schedules and broadcasts the queried data items to the clients via K (K > 1) homogeneous downlink channels, namely with the same bandwidth. As previously mentioned, one broadcast has the potential to satisfy all outstanding queries for the same data item. However, each client can retrieve an item from only one of the K downlink channels at a time. A downlink channel typically has much greater communication capacity than an uplink channel which is known as asymmetric communication [5]. On the server side, arriving queries are inserted into a priority queue by the scheduler. The order of queries in the priority queue is based on the adopted scheduling algorithm. Then, queries in the priority queue are processed periodically at the beginning of each batch slot. A batch slot refers to a batch of k (k > 1) time slots in which the allocated items cannot be changed once the transmission of the batch slot has started because the indexing information of the data items in the batch slot has been transmitted immediately before the batch slot begins. We assume that a client starts to listen to the channels to retrieve the indexing information of the requested data items only after a query is submitted. In other words, queries submitted during the transmission of a batch slot will not be served by the data items in the batch slot. Firstly, queries are processed by an admission controller. Based on the system capacity, workload and query deadline, queries may be admitted or rejected by the admission controller. Rejected queries are dropped and a notification message indicating the rejection is returned to corresponding clients. The queries once admitted would be satisfied with high chance. After going through the admission controller, the queries which have neither been rejected nor admitted are called unprocessed queries.

TABLE I S UMMARY OF N OTATIONS

Both the admitted and unprocessed queries are kept in the priority queue. After admission control, channel allocation is performed for subsequent broadcasting. This step is carried out based on the scheduling order of queries regardless of their status (admitted or unprocessed). However, in the case of an unprocessed query, as long as it remains unserved in the priority queue, the query will pass through the admission controller in the subsequent invocations at the beginning of each batch slot. Table I lists the notations used in this paper. The primary performance goal of a real-time data broadcast system is to minimize the deadline miss ratio, i.e., the percentage of failed queries. As rejected queries are considered failed, we target to provide better QoS via the admission control scheme without jeopardizing system performance in terms of the deadline miss ratio.

592

IEEE TRANSACTIONS ON BROADCASTING, VOL. 60, NO. 4, DECEMBER 2014

III. A DMISSION C ONTROL In this section, we discuss the issues of admission control for real-time multi-item queries in multi-channel data broadcast systems and propose a new admission control scheme. A. Definitions and Preliminaries We first introduce the following concepts. Definition 1: Slack Time: The remaining time before the deadline of a query is the slack time of the query. Notation s denotes the number of remaining time slots before the deadline of a query. A query can meet its deadline only if the slack time is enough for broadcasting all its unserved data items. We define it as a live query. Note that in a data broadcast system, a data item of a query may be served due to broadcast of the same data item of another query. Definition 2: Live Query: Consider a query Q, which consists of n unserved data items with slack time s. Query Q is said to be live if s ≥ n > 0. Otherwise it is dead. When n = 0, the query is complete as it has no unserved data item. Definition 3: Service Progress Ratio (SPR): Consider a query Q, which consists of n data items, in which m(t) of them have already been served at time t. SPR of Q at time t is the ratio of the number of requested data items served to the number of data items it requests. That is, SPR(t) = m(t) n . Note that the server routinely removes any completed or dead queries to ensure that all pending queries are live. Before we propose the admission control scheme, we first discuss the inter-channel allocation conflict in Section III-B. B. Inter-Channel Allocation Conflict In on-demand single channel data broadcast systems, different queries may have common data items and a single broadcast can satisfy all queries for the same data item at a time. So, it is unnecessary to broadcast the same data item multiple times for different queries. In fact, most data scheduling algorithms proposed for data broadcast systems consider this factor in making their scheduling decisions in order to save bandwidth and maximize system performance. However, this may not be true for multi-channel architecture. It is because one client can listen to only one channel at a time in multi-channel data broadcast systems. We define this issue as an inter-channel allocation conflict. (Inter-channel allocation conflict is a phenomenon that two or more data items of a query are allocated on different channels of the same time slot while the corresponding client can only receive one of them.) So, some data items must be duplicated in the allocation in order to avoid the interchannel allocation conflict. However, to save more space for admitting as many queries as possible, the number of copies should be kept as small as possible. This issue will be dealt with at the channel allocation stage to be discussed in Section IV.

C. Admission Control Scheme: Item Level Admission Control (ILAC) The basic idea of the admission control scheme is to check whether an allocation that satisfies all admitted queries and a new query exists. If such an allocation does not exist, the new query should be rejected. In order to keep the admission controller as simple and efficient as possible, we consider a sufficient condition of rejecting a new query in designing the admission control scheme. A query will be rejected if the total number of different data items required by both the previously-admitted queries and the new query exceeds the bandwidth available for allocation. In other words, a query is rejected only when an allocation cannot be found under the most favorable condition that there is no inter-channel allocation conflict and every allocated data item can be shared by all queries. This is, of course, not a necessary condition because, as discussed above, some data items must be duplicated in the allocation to avoid the inter-channel allocation conflict, thereby requiring more bandwidth than that stipulated by the sufficient condition. To start with a simple case, we consider multi-item queries with uniform deadlines. Given a new query and a number of admitted queries, suppose the number of time slots before the uniform deadline is Dl, the number of channels is K and the total number of different data items required by the admitted queries and the new query is |V|. If |V| > Dl ∗ K, the new query must be rejected as it is impossible to allocate all the data items on the channels before the deadline. For multi-item queries with differentiated deadlines, we introduce a new admission control algorithm called Item Level Admission Control (ILAC). ILAC regards a multi-item query with a deadline as multiple dummy single-item queries with the same deadlines, each of which consists of one of the requested data items in the multi-item query. If there are two or more dummy single-item queries that require the same item in the system, the query with the earliest deadline will survive while the others are eliminated. For each dummy single-item query, the rejection condition is |V| > si ∗ K

(1)

where si is the slack time of the current single-item query and |V| is the number of single-item queries whose deadlines are earlier than or equal to the current single-item query. The new multi-item query survives in the system only if none of its dummy single-item queries satisfies the rejection condition. Otherwise, the new multi-item query is rejected and removed from the system. Among the survived queries, a query Qi will be admitted, if its Service Progress Ratio at the current time t, SPRi (t) (Definition 3) exceeds an administrator defined threshold SPR, i.e., SPRi (t) ≥ SPR. Effectively, SPR controls the size of time window a query can be considered by the admission controller before it gets admitted. Generally, SPR is a parameter tuned by the system administrator to strike a balance between the system performance and the QoS provided to clients. We will elaborate on the role of SPR shortly. Details of the ILAC scheme is shown in Algorithm 1 in Appendix A. ILAC is invoked to process the queries in the

ALI et al.: ADMISSION CONTROL-BASED MULTICHANNEL DATA BROADCASTING FOR REAL-TIME MULTI-ITEM QUERIES

PriorityQ, where queries are stored in scheduling order, at the beginning of each batch slot. An AdmittedQ is initialized with the queries which have been admitted in previous invocations (Line 7-9). Each non-admitted (unprocessed or newly-arrived) query in the PriorityQ has to pass through the RejectionProcess (Line 12), where the query will be checked for the ILAC rejection condition (Line 22-38). If the query satisfies the rejection condition, it will be rejected and deleted from the PriorityQ (Line 14), otherwise it will be checked against the admission condition, namely whether its current service progress ratio (SPRi (t)) exceeds the SPR threshold (Line 17). If the condition is satisfied, the query will be admitted (Line 19) otherwise it will be treated as an unprocessed query (Line 21), and might go through the next ILAC process if it remains unserved in the PriorityQ at the next invocation of ILAC. Note that after passing through the RejectionProcess, if a query Qj has not been rejected, regardless of its admitted or unprocessed status, it will not be deleted from the AdmittedQ in the current invocation. This is necessary because in making admission decisions for queries after Qj in the PriorityQ, Qj has to be taken into consideration as it may be allocated to channels for broadcasting and therefore consume bandwidth. Note that in the AdmittedQ, only the unserved items of a query are considered for making admission/rejection decisions. Setting a suitable SPR threshold, or simply SPR, for admitting a query plays a significant role in achieving both better system performance and satisfactory QoS. On the one hand, a small SPR value allows the admission controller to make quick decisions and notify the corresponding clients in a timely manner. However, an aggressive admission controller, which admits queries quickly, may damage the capability of the scheduler in maximizing the system performance. It is because such an admission controller, after quickly admitting a large number of queries, will also reject queries aggressively due to insufficient bandwidth. Then, the scheduler will have less flexibility to exploit data sharing among queries. Second, a quick decision may not be a right decision. For instance, suppose a less-urgent query arrives earlier and is admitted before a more-urgent query. Although there was enough bandwidth for the less-urgent query when it was admitted, the admission of the late more-urgent query may make the less-urgent query miss its deadline due to insufficient bandwidth. This is possible because channel allocation is done in scheduling order. In this case, the admission controller fails to keep its guarantee to the admitted less-urgent query and damages the QoS. On the other hand, a large SPR value allows the admission controller to make informed decisions and gives more room to the scheduler to exploit data sharing among queries. However, this will also defeat the primary objective of an admission controller, namely, to inform clients the status of their queries in a timely manner. We illustrate the tradeoff using the following examples. Note that in the examples presented in this paper, a query Qi which arrives at time ATi with slack time si and requires a data item set Di , is represented as Qi : Di |[ATi , si ). The jth time slot is denoted by tj . In addition, we assume that earliest deadline first (EDF) scheduling is adopted.

593

In Example 1, we assume that the number of available channels is K = 1, with batch slot size k = 2. Example 1: Q1 : (d1 , d2 , d3 , d4 , d5 , d10 )|[0.0, 8), Q2 : (d6 , d7 , d8 )|[2.0, 4), Q3 : (d6 , d7 , d9 )|[2.0, 5). When SPR = 0.0, if a query does not satisfy the rejection condition in the first invocation of the admission controller, the query will be admitted. Suppose the first invocation of the admission controller is done at time 0.0, that is, after arrival of query Q1 . Q1 passes through the admission controller and is admitted. A possible channel allocation is, d1 → d2 on Channel 1 in time slots t1 and t2 , as shown in Fig. 2(a). After the first allocation, the status of Q1 is, Q1 : (d3 , d4 , d5 , d10 )|[0.0, 6). At time 2.0, Q2 and Q3 arrives. As Q1 is already admitted, in the second invocation of the admission controller only Q2 and Q3 pass through the admission controller for their decisions. Accordingly, both Q2 and Q3 will be rejected because, for Q2 , |V| = 7, namely the size of the unserved item set (d3 ∼ d8 , d10 ) is greater than s1 (= 6) × K(= 1). Similarly for Q3 , |V| = 7, namely the size of the unserved item set (d3 ∼ d7 , d9 , d10 ), is greater than s1 (= 6) × K(= 1). The subsequent channel allocations are as follows: d3 → d4 and d5 → d10 on Channel 1 in time slots t3 , t4 and t5 , t6 in the second and third allocations respectively (Fig. 2(a)). After the third allocation, Q1 is served completely. Now consider the case in which SPR = 0.6. In the first invocation of the admission controller, Q1 will remain unprocessed (neither admitted nor rejected). The first channel allocation is shown in Fig. 2(b). In the second invocation, Q2 and Q3 pass through the admission controller before Q1 because they have earlier deadlines. Q2 and Q3 remain unprocessed, but Q1 is rejected because |V(= 8)| > s1 (= 6) × K(= 1). Note that the unserved item set for Q1 is (d3 ∼ d10 ). In the second allocation, due to an earlier deadline, items of Q2 , namely d6 and d7 are allocated in time slots t3 and t4 respectively (Fig. 2(b)). In the third invocation both Q2 and Q3 will be admitted, because SPR2 = SPR3 (= 23 = 0.67) > SPR (= 0.6). After the third allocation both Q2 and Q3 are served completely. Now, we examine the tradeoff between the two SPR values, 0.0 and 0.6. When SPR value is set to 0.0, the admission/rejection decisions for all the three queries are made upon arrival. However, two out of three queries are rejected, mainly due to the early but less-urgent query. Obviously, this is undesirable to sacrifice the system performance for QoS. In contrast, when SPR is set to 0.6, more queries can be served, though the admission/rejection decisions are made later. In Example 2, we assume that the number of available channels is K = 2, with batch slot size k = 2. Example 2: Q1 : (d1 , d2 , d3 , d4 , d5 , d6 , d10 , d11 )|[0.0, 8), Q2 : (d1 , d2 , d7 )|[2.0, 3), Q3 : (d8 , d12 , d13 )|[2.0, 3). Consider the case SPR = 0.0. In the first invocation Q1 is admitted. In the first allocation, a possible channel allocation is, d1 → d2 on Channel 1 in time slots t1 and t2 (Fig. 3). After the first allocation, the status of Q1 is, Q1 : (d3 , d4 , d5 , d6 , d10 , d11 )|[0.0, 6). At time 2.0, Q2 and Q3 arrive. In the second invocation, Q2 and Q3 are admitted, because for Q2 , |V| = 9, namely the size of the unserved item set (d1 ∼ d7 , d10 , d11 ) is less than s1 (= 6) × K(= 2),

594

IEEE TRANSACTIONS ON BROADCASTING, VOL. 60, NO. 4, DECEMBER 2014

(a)

(b) Fig. 2.

Corresponding channel allocations of Example 1. Channel allocations when (a) SPR = 0.0 and (b) SPR = 0.6.

Fig. 3.

Corresponding channel allocations of Example 2, when SPR = 0.0 and SPR = 0.6.

for Q3 , |V| = 12, namely the size of the unserved item set (d1 ∼ d8 , d10 ∼ d13 ) is not greater than s1 (= 6) × K(= 2). Due to earlier deadlines of Q2 and Q3 than Q1 , in the second allocation d1 → d2 and d8 → d12 are allocated in time slots t3 , t4 of Channels 1 and 2 respectively. After this allocation, Q1 becomes a dead query (Definition 2) and is removed from the system, though it has been admitted upon arrival. In the third allocation, d7 and d13 are allocated in slot t5 . After this allocation Q2 and Q3 are served, as shown in Fig. 3. Now consider the case SPR = 0.6. The first invocation and allocation are the same as the SPR = 0.0 case. However, in the second invocation, all the queries, Q1 ∼ Q3 remain unprocessed, for instance, Q1 is not admitted, because SPR1 (= 28 = 0.25) < SPR (= 0.6). The second allocation is also the same as the SPR = 0.0 case. Similarly, after the second allocation, Q1 becomes a dead query and is removed from the system. However, in this case, Q1 has not been admitted yet. In the third invocation both Q2 and Q3 are admitted, because SPR2 = SPR3 (= 23 = 0.67) > SPR (= 0.6). From Example 2, in SPR = 0.0 case, one of the three admitted query misses its deadline, namely the admission controller cannot keep promise to the earlier arrived and admitted query Q1 . On the contrary, in the SPR = 0.6 case, two out of two admitted queries can meet their deadlines, and all the three queries get right admission/rejection decisions. So from the above two examples we can conclude that, a larger SPR value helps an admission controller to get more time which in turn helps it to make correct admission/rejection decisions, which eventually help the system to satisfy more queries and keep higher serving guarantee as well. However,

QoS performance declines with increased SPR value. So there is a tradeoff for setting SPR value in terms of serving more queries and gaining higher QoS performance. To conclude, ILAC is invoked at the beginning of each batch slot before channel allocation. In each invocation ILAC scans the unprocessed and newly arrived queries in scheduling order. The rejected queries are dropped while the admitted and unprocessed queries are kept in the priority queue for channel allocation. After the admission control, data items required by the queries in the priority queue are allocated to the channels for broadcasting. Note that channel allocation is independent of the admission status of the queries in the priority queue. IV. C HANNEL A LLOCATION P ROBLEM For single-channel scheduling, clients can share data items broadcast through the only available channel. However, for multi-channel scheduling, due to inter-channel allocation conflict, clients cannot share data items broadcast on different channels at a time. In addition, some channel allocations may drive clients to switch from one channel to another frequently. Hence the objectives of channel allocation are to maximize data sharing and to minimize switching. The two objectives are discussed in the following subsection. After that, some randomized allocation schemes are introduced. A. Heuristic-Based Scheme: Matching Based Allocation (MBA) In multi-channel environments, to avoid inter-channel allocation conflict, all required data items of a query should be

ALI et al.: ADMISSION CONTROL-BASED MULTICHANNEL DATA BROADCASTING FOR REAL-TIME MULTI-ITEM QUERIES

allocated in different time slots before the deadline. Therefore, if a query can be satisfied before its deadline, a mapping from all data items required by the query to different time slots exists in the allocation. To realize the allocation, a bipartite graph is constructed. In the graph, data items, time slots and mappings from a data item to a time slot are denoted by item vertices, slot vertices and edges between the corresponding item vertex and slot vertex, respectively. To maximize data sharing among clients, existing items in the allocation should be reused. So the problem is to find the maximum matching in the bipartite graph constructed from the existing allocations and to ensure that the unmatched items of the query can be allocated in the remaining time slots. If this does not work, the allocation does not exist. Hence, the allocation problem is modeled as a matching problem and the allocation is called Matching Based Allocation (MBA). Next, how data sharing can be effectively performed can be observed through a detailed analysis of the following example. In a current broadcast channel allocation, suppose item d1 has been allocated in slots t1 and t3 and item d2 has been allocated in slot t2 . There is no free channel in slots t1 and t2 while slots t3 and t4 have 1 and 2 free channels, respectively. Given two queries Q1 : (d1 , d2 , d3 )|[0, 4) and Q2 : (d1 , d2 , d4 , d5 )|[0, 4), the x both queries Q1 and Q2 . Intuitively, we get the following three heuristics. 1) If a required data item of a query cannot be found in the current allocation, the data item should be allocated to the time slot with more free channels. In this way, the remaining free channels in the time slot can be available for other queries. In the above example, although there are free channels in both t3 and t4 , d3 of Q1 should be allocated to t4 . 2) If a required data item of a query is found in some time slots in the current allocation while there are free channels in other time slots, one of the time slots containing the required data item should be assigned to the query for retrieving the data item instead of allocating the data item to any free channels. In this way, free channels in other time slots can be saved for remaining data items of the query. In the above example, although there are free channels in t4 , d1 , which is requested by Q1 , should not be allocated to t4 since d1 is found in both t1 and t3 . So, either t1 or t3 should be assigned to Q1 for retrieving d1 . 3) If a required data item of a query is found in some time slots in the current allocation, the time slot with fewer free channels should be assigned to the query for retrieving the data item. In this way, more free channels in other time slots will be available for the remaining data items of the query. In the above example, although d1 which is requested by Q1 is found in both t1 and t3 , t1 should be assigned to Q1 for retrieving d1 . Based on the above three heuristics, t1 and t2 can be assigned to both Q1 and Q2 for retrieving d1 and d2 whereas d3 and d4 can be allocated in t4 and d5 can be allocated in t3 . To utilize these heuristics to solve the problem, a weighted bipartite graph G = (D, T, S) is constructed. Consider a query Q. There are two types of vertices in the graph. One side

595

of the bipartite graph consists of item vertices D = {d : all items required by Q}. The other side consists of slot vertices T = {t : all time slots before the deadline of Q}. Suppose the number of free channels in time slot t is denoted as λt and the total number of channels is K. The edge set S is discussed in two cases. 1) If item d has been allocated in time slot t due to earlier allocation, the corresponding vertices are connected by an edge (d, t) ∈ S and a weight w1dt = (K − λt )(K + 1) is assigned to the edge; 2) If item d has not been allocated in time slot t and λt = 0, the corresponding vertices are connected by an edge (d, t) ∈ S and a weight w2dt = λt is assigned to the edge. Based on the above weight assignment, the problem of finding the best allocation is equal to the problem of finding the maximum weighted matching in the constructed bipartite graph as the followings hold. 1) It is easy to see that Case (1) satisfies Heuristic (3) and Case (2) satisfies Heuristic (1); 2) As λt = K in Case (1) and λt ≤ K < K + 1 in Case (2), w1dt > w2dt , namely the two cases together satisfy Heuristic (2). In addition, in case of a tie, it is preferable to broadcast a data item as early as possible. So, in this case, a data item should be allocated in the k slots of the next batch slot rather than other slots after the batch slot. To break the tie, a small value  (0 <  < 1) is added to the corresponding weights wdtji if the items are allocated or can be allocated in the next batch slot. As the channel allocation is performed once every batch slot, the weighted matching scheme operates only on the next batch slot. Specifically, let s be the number of time slots between the start of the next batch slot and the deadline of a query. The size of a batch slot is k, and the number of unserved items of the query is n. If n > s, the query is dead and should be removed according to Definition 2. Otherwise, there are two cases: (1) k < n ≤ s: the number of slot vertices in the bipartite graph s is set to n; (2) n ≤ k < s : the number of slot vertices in the bipartite graph s is set to k. Algorithm 2 in Appendix B shows the details of the weight assignment. Primal-dual method is a popular solution to the matching problem. Also known as the Kuhn-Munkres algorithm or Hungarian method, this method was developed by Harold Kuhn in 1955. The idea of primal-dual method is to either increase a maintained weighted matching or decrease a maintained weighted vertex cover until they are equal. For implementation, some necessary changes are needed: dummy vertices are added if n = s and zero-weight edges are added if the constructed bipartite graph is not complete. The details of the implementation is shown in Algorithm 2 in Appendix B. The time complexity of primal-dual method for this problem is O(s3 ). The weighted matching scheme MBA can always get a maximum weighted matching within the next batch slot. However, some edges may have zero weights, so only non-zero edges should be selected. Then, the corresponding items are allocated to the next batch slot and the items that match the slots after the next batch slot are ignored.

596

IEEE TRANSACTIONS ON BROADCASTING, VOL. 60, NO. 4, DECEMBER 2014

After a query is admitted by the admission controller, the result of primal-dual method indicates only in which slots the required items are allocated. However, it does not indicate on which channels the required items are allocated. Therefore, it leaves space to minimize the switching cost of clients among channels. Although it can be solved by exhaustive search with time cost K n , a more efficient solution is needed. For a given query Q that requires n items, the switching frequency of the client is at most (n − 1). When n = 1, there is no switching. When n > 1, if we know how the former (n − 1) items are allocated such that the switching is minimized, we can easily get the best channel for the nth item such that the switching for all n items is also minimized. It implies that optimization of switching cost can be achieved through dynamic programming. Assume tj is the jth matched time slot according to the result of primal-dual method and switchct i represents the minj imum switching frequency of a client among channels when the client switches from the first matched slot to the slot tj on channel ci . Now start from j = 1. We initialize the switching frequency as switchct i = 0 for all channels ci = 1, . . . , K in 1 the first matched slot t1 if channel ci is free or allocated by the matched item. Otherwise, switchct i = ∞. For j > 1, similarly, 1 we figure out the switching frequency as follows if channel ci is free or allocated by the matched item. Otherwise, we also set switchct i = ∞.

in the current allocation, the client accesses the item from the allocated channel. Otherwise, a randomly selected item is allocated on a free channel, if possible. After the allocation for the current scheduled query finishes, the allocation for the next scheduled query continues until no item can be allocated in the next batch slot.

j

   c

switchct i = min switchct i , switcht i + 1|i = i j

j−1

j−1

In addition, if a channel in a time slot has been allocated by a matched item, the clients for that item must switch to that channel in that time slot. When j increases to n, we get the minimized switching frequency and a sequence of channels for switching. A detailed procedure is shown in Part 4 of Algorithm 2 in Appendix B. B. Randomized Scan Allocation In the following, we discuss two randomized allocation schemes for item-level scheduling and query-level scheduling. These schemes serve as baselines for comparing with the performance of MBA proposed above. Note that item-level scheduling bases on scheduling priority of items, while querylevel scheduling bases on scheduling priority of queries. As both allocation schemes need randomized scan of channels and they apply to different schedulers, these two schemes are both called Randomized Scan (RS) allocation scheme. For item-level scheduling, RS allocates the item with the highest priority to a random free channel in a random slot within the next batch slot until all channels in all slots within the next batch slot are occupied. For query-level scheduling, the required data items of the query with the highest priority should be allocated in the next batch slot. To utilize existing data items in the current allocation, if more than one required item has been allocated on different channels in a slot, the client of the query randomly selects one of the channels to access the required item. If there is only one required item

V. S IMULATIONS AND E VALUATIONS A. Simulation Setup For evaluating performance of the proposed admission control and channel allocation schemes in an on-demand data broadcast system, we incorporate some well-known real-time scheduling algorithms for inserting queries into the priority queue upon arrival. EDF (Earliest Deadline First) [30] serves the most urgent query first, that is, the query with the earliest deadline has the highest priority. SIN (Slack time Inverse Number of pending queries) [4] takes both the urgency level and the number of pending queries for a data item, namely item access frequency, into consideration. The priority of a query is inversely proportional to the slack time inverse the number of pending queries. Profit [31] is a counterpart of item access frequency for multi-item queries. For a multi-item query, the profit of a required item reflects the contribution of the item to the completion of the query. If the query is closer to completion, the profit of the remaining unserved items is higher. It has been shown that profit is more effective than item access frequency for multi-item queries [31]. By replacing item access frequency by profit in calculating the priority of a query in SIN, an algorithm called Slack time Inverse Profit (SIP) is included for comparison. Coupling with channel allocation schemes, RS and MBA, there are a suite of algorithms, namely EDF-RS, EDF-MBA, SIN-RS, SIN-MBA, SIP-RS and SIP-MBA. Note that the schedulers of SIN-MBA and SIP-MBA are query-level. That is, for each query, SIN and SIP compute average item access frequency of unserved items over slack time and average item profit of unserved items over slack time, respectively, for assigning priority to the query. Furthermore, by adding the admission control scheme ILAC, the algorithms with MBA channel allocation scheme are extended to ILAC-EDF-MBA, ILAC-SIN-MBA and ILAC-SIP-MBA. Next, we describe our simulation model for performance evaluation. The model is based on the system architecture described in Section II and is implemented using CSIM19 [32]. The model includes a single server and a number of clients (c). It is an open system in which clients continually generate queries. The query inter-arrival times are exponentially distributed. The mean is set to be a constant divided by f , which is a scaling factor of the query arrival rate. In our simulations, the mean query inter-arrival time for each client is set to be 10 f time units. The number of items in a query follows the uniform distribution in [1, 2 ∗ n¯ − 1] with expectation n¯ when n¯ > 1. When n¯ = 1, all queries are single-item queries. Deadline Dli of a query Qi arriving at time ATi is set according to the following formula, where ni is the

ALI et al.: ADMISSION CONTROL-BASED MULTICHANNEL DATA BROADCASTING FOR REAL-TIME MULTI-ITEM QUERIES

597

TABLE II PARAMETERS AND D EFAULT S ETTING

number of items in Qi and the function uniform produces a random number selected uniformly from the range of query deadline scaling factor μ− ∼ μ+ .    Dli = ATi + 1 + uniform μ− , μ+ ∗ ni Note that each item has a unit size. The data access pattern is shaped with the Zipf distribution [33], according to the widely accepted research on human behavior patterns, with skewness parameter θ , where 0 ≤ θ ≤ 1. The smaller the value of skewness parameter is, the less different the item access frequencies among all items in the database are. When θ = 0, the distribution becomes the Uniform distribution, while the Zipf distribution becomes strict if θ increases to 1. In response to queries in the pending queue, the server continually retrieves data items from the database of size N for broadcasting while clients listen to one of the K channels at a time to retrieve their data items of interest. The parameters and their default setting can be found in Table II. B. Performance Metrics To compare the performance of different algorithms, we adopt the following different performance metrics. 1) Deadline Miss Ratio (DMR): Query deadline miss ratio is the ratio of the number of failed queries which cannot be satisfied before their deadlines over the total number of submitted queries. Rejected queries are also regarded as failed queries if admission control is used. A low query deadline miss ratio is essential for good real-time performance. 2) Average Lead Time (ALT): Lead time is the amount of time ahead of the deadline of a query that the query is rejected (LT-R), or the amount of time ahead of the serving point that the query is admitted (LT-A). The serving point of a query is the time when the query is satisfied. Fig. 4 shows the timings used to calculate the lead time of a query. This metric shows how early clients can be informed of the admission decisions (admission/rejection) of their submitted queries. For algorithms without admission control, the average lead time is zero because a client knows the fate of its submitted query only when its deadline expires or all the data items in the query are broadcast. A larger average lead time indicates a better QoS performance of the system. ALT is calculated over all submitted queries. 3) Average Decision Delay (ADD): Decision delay is the amount of time the admission controller takes to make a

Fig. 4.

QoS related performance metrics.

decision (admission/rejection) of a query. It is the time difference between the arrival of a query and the decision point made by the admission controller (Fig. 4). A lower ADD value means that the admission controller can make decisions quickly, which yields a higher ALT value. 4) Query Processed Ratio (QPR): It is possible that some of the queries are satisfied or their deadlines are missed before the admission controller can make decisions for them. QPR is the ratio of the number of queries that are processed (admitted/rejected) by the admission controller to the total number of submitted queries. A high QPR value means that there are decisions for a large number of queries, in other words, the admission controller is more effective. 5) Query Rejection Ratio (QRR): QRR is the number of rejected queries over the total number of submitted queries. Note that an admitted or unprocessed (not admitted/rejected) query may also miss its deadline. So, the difference between the rejection ratio and the query deadline miss ratio shows the number of the admitted or unprocessed queries that ultimately miss their deadlines. In other words, QRR shows the effectiveness of the admission controller in rejecting queries that have no hope to be satisfied before their deadlines. 6) Admitted Query Serviced Ratio (AQSR): It is the ratio of the number of admitted queries that can be served before their deadlines expire to the total number of queries admitted by the admission controller. A high value means that the admission controller can provide a high statistical guarantee that the admitted queries can be served before their deadlines. VI. R ESULTS AND D ISCUSSIONS In this section we discuss the simulation results in different circumstances. The results are obtained when the system was in a steady state and the simulations continued until a confidence interval of 0.95 with half-widths of less than 5% about the mean was received. A. Impact of System Workload Fig. 5 shows the impact of system workload, which is controlled by the query arrival rate scaling factor f . Increasing f

598

IEEE TRANSACTIONS ON BROADCASTING, VOL. 60, NO. 4, DECEMBER 2014

(a)

(d)

(b)

(e)

(c)

(f)

Fig. 5. Impact of system workload. (a) Deadline miss ratio (DMR). (b) Average lead time (ALT). (c) Average decision delay (ADD). (d) Query processed ratio (QPR). (e) Ratio. (f) Admitted query serviced ratio (AQSR).

means shorter inter-arrival times which lead to heavier work load in the system. In Fig. 5(a), the query deadline miss ratio (DMR) increases when f increases. It shows that the system’s real-time performance decreases when the system workload increases. The algorithms with matching based allocation (MBA) have better performance than the corresponding

algorithms with randomized scan (RS) allocation. This validates the effectiveness of matching based allocation. With the presence of the admission controller, performance is further improved in ILAC-SIN-MBA and ILAC-EDF-MBA, whereas, ILAC-SIP-MBA and SIP-MBA, which are the best two algorithms, have very similar performance. This shows

ALI et al.: ADMISSION CONTROL-BASED MULTICHANNEL DATA BROADCASTING FOR REAL-TIME MULTI-ITEM QUERIES

that incorporating admission control does not degrade the performance of DMR. In some cases, it can even help to improve performance by rejecting queries with no hope to be satisfied, thereby reducing workload and improving the chance for other queries to meet their deadlines. Fig. 5(b) shows the QoS performance in terms of average lead times (ALTs) of different scheduling algorithms with admission control. For algorithms without admission control, clients know the fate of their queries only when their deadlines expire (for failed queries) or all the required data items are broadcast (for served queries). So the ALTs of these algorithms are always zero. However, for algorithms with admission control, clients are informed earlier when their queries are either admitted or rejected by the admission controller. The results show that these algorithms have increasingly better QoS performance when the system workload increases. With increasing workload, more queries satisfy the admission/rejection condition, leads to more processed queries (Fig. 5(d)). This in turn results in a larger LT. Consequently, average LT (ALT) increases with increasing f . Regarding decision delay, a rejection decision must be made before a query’s SPR value exceeds the threshold. However, an admission decision must be made after a query’s SPR value exceeds the threshold. So, when f is small, the workload is light and the number of admitted queries is higher than the number of rejected queries. Since queries are generally admitted late, the average decision delay (ADD) value is large, as shown in Fig. 5(c). On the other hand, with heavier workload ( f is higher), the number of rejected queries increases. Since queries are generally rejected early, the ADD value is decreasing. When examining the relative performance differences among the algorithms in terms of ALT (Fig. 5(b)) and ADD (Fig. 5(c)), ILAC-EDF-MBA has the highest ALTs and ADDs. Unlike SIN and SIP, EDF does not consider data sharing but only considers the urgency of a query. Hence, the admission controller admits urgent queries first. As a result, a large number of queries, which could be served by the exploitation of data sharing, may be rejected eventually due to the excessive use of bandwidth by the admitted urgent queries. So, the number of processed queries is higher in ILAC-EDF-MBA than ILAC-SIN-MBA and ILAC-SIP-MBA (Fig. 5(d)). Consequently, the ALTs of ILAC-EDF-MBA is the highest (Fig. 5(b)). On the other hand, rejecting more queries creates more rooms for admitting more new queries. Generally, the query admission incurs a longer decision delay than the query rejection, which results in the highest ADDs of ILAC-EDF-MBA (Fig. 5(c)). Recalling that the difference between SIN and SIP is only the consideration of the item access frequency [31]. Hence, the results in Fig. 5(b) and (c) also demonstrate the similar trend of results of ILAC-SIPMBA and ILAC-SIN-MBA for the ALTs and the ADDs, respectively. When the workload is light, most queries do not satisfy the rejection condition and many of them can be served quickly even before being admitted by the admission controller. This leads to a relatively low query processed

599

ratio (QPR) (Fig. 5(d)). When the workload increases, more queries are rejected and other queries also take longer time to be served, thereby allowing the admission controller to make admission decisions before they are served. Consequently, increasing workload leads to a higher QPR. Fig. 5(d) shows that more than 80% of the queries are processed (admitted or rejected) by the admission controller when the workload ranges from moderate to high for all the three algorithms. Fig. 5(e) and (f) show the quality of the decisions made by the admission controller. Fig. 5(e) shows the accuracy of the rejection decisions by comparing the query rejection ratio (QRR) and DMR values. Fig. 5(f) shows the reliability of the admission decisions by counting the number of admitted queries which cannot meet their deadlines. It can be observed from Fig. 5(e) that the QRRs and DMRs of these algorithms are very close, which means that the admission controller rejects effectively most of the queries that are destined to fail. On the other hand, Fig. 5(f) shows that most of the admitted queries meet their deadlines. The admitted query serviced ratio (AQSR) values never fall below 97% over the whole workload range for all three algorithms. As a result, we can conclude that ILAC can improve the quality of service by rejecting failed queries earlier and admitting potential queries with high statistical guarantee without jeopardizing overall system performance. B. Impact of Query Service Progress Ratio Threshold (SPR) Fig. 6 shows the impact of the query service progress ratio threshold (SPR) on the performance of different ILAC based MBA algorithms. SPR = 0.0 means that a query, which has not been rejected by the admission controller at the first time, will be admitted. A positive value of SPR means that a query will be admitted only if it can survive after some of the required data items have been served. For instance, SPR = 0.6 means that a query will be admitted if it has not been rejected by the admission controller after 60% of its required data items have been served. If SPR = 1.0, the admission controller performs only rejection and no query will be admitted because SPR = 1.0 means that a query has already been served completely. Accordingly, when SPR = 0.0, queries are admitted without considering the service progress status of a query. Consequently a large number of queries are admitted. Note that an admitted query can no longer be rejected and channel allocation is done independently. Again, upon invoking the admission controller all the arrived queries are processed, either admitted or rejected, hence there are chances to make premature decisions which hinder the data sharing flexibility of the scheduler. In addition, if a decision regarding a query is made before the arrival of some higher priority queries, there is a chance that the decision will eventually prove to be a poor one, such as the admitted query may miss its deadline. Hence for SPR = 0.0, all the ILAC based algorithms show higher DMR, as shown in Fig. 6(a). On the contrary, increasing SPR provides more time before the admission decision of a query is made, which helps to improve the accuracy of the decision and consequently the real-time performance. However,

600

IEEE TRANSACTIONS ON BROADCASTING, VOL. 60, NO. 4, DECEMBER 2014

(a)

(d)

(b)

(e)

(c)

(f)

Fig. 6. Impact of query service progress ratio threshold (SPR) on different ILAC based MBA algorithms. (a) Deadline miss ratio (DMR). (b) Average lead time (ALT). (c) Average decision delay (ADD). (d) Query processed ratio (QPR). (e) Ratio. (f) Admitted query serviced ratio (AQSR).

ILAC-EDF-MBA shows increasing DMR when SPR > 0.2. Here we see the reason, recalling our previous discussion, a large SPR value allows the admission controller to make a more informed decision and gives more room to the scheduler to exploit data sharing among queries. However, in case of EDF scheduling, data sharing is not considered. Although a

large SPR value allows the admission controller to process and admit urgent queries first, a large number of queries, which could be served by exploiting data sharing, may be rejected due to the exclusive use of bandwidth by the admitted urgent queries. The situation gets worse when the SPR value increases. Nonetheless, SPR value doesn’t have any

ALI et al.: ADMISSION CONTROL-BASED MULTICHANNEL DATA BROADCASTING FOR REAL-TIME MULTI-ITEM QUERIES

impact on the algorithms not based on ILAC, as shown in Fig. 6(a). As discussed before, an admission decision of a query is made only after the query’s SPR value exceeds the threshold. So, when the SPR value is large, the admission controller waits a longer time before making admission decisions. In addition, some of the queries may be served before being admitted, leading to a lower number of processed queries (Fig. 6(d)). As a result, ALT drops as the SPR value increases (Fig. 6(b)). Moreover, delayed admission decisions also delay rejection decisions due to the availability of non-reserved bandwidth. So, ADD increases as the SPR value increases (Fig. 6(c)). Nonetheless, when SPR = 1.0, there are only rejections and no query is admitted. So, the ADD values, which are computed from only rejection decisions in this case, drop when SPR = 1.0, because rejection decisions are in general made earlier than admission decisions. With increasing SPR, more accurate admission/rejection decisions are made, which results in a higher AQSR (Fig. 6(f)), and reduced differences between DMR and QRR of a corresponding algorithm (Fig. 6(e)). Note that an unprocessed query may also be served or miss its deadline. The difference between DMR and QRR reflects the number of admitted or unprocessed queries that miss their deadlines.

601

(a)

C. Impact of the Number of Channels and the Data Access Pattern on Channel Allocation Both the number of channels and the size of a batch slot influence the number of data items that can be allocated in a batch slot. Moreover, the data access pattern has significant impact on the number of queries which can be satisfied by an allocation. In this regard, this set of simulations examines the impact of the number of channels and the data access pattern on the effectiveness of the proposed MBA scheme. Fig. 7(a) shows the impact of the number of channels K on the real-time performance of the MBA and RS based algorithms. Intuitively, more channels allow more data items to be broadcast concurrently. Consequently, with increasing number of channels, more queries can be served before their deadlines, leading to lower DMR (Fig. 7(a)). Moreover, the MBA based algorithms maximize data sharing among queries by reusing the existing allocated items, and avoiding inter-channel allocation conflicts which can be more serious with more channels. In contrast, the RS based algorithms do not consider interchannel allocation conflict, rather allocate items randomly. As a result, Fig. 7(a) also shows that the MBA based algorithms outperform the RS based algorithms with a larger margin when there are more channels. Fig. 7(b) shows the impact of data access pattern (θ ) on the real-time performance of the MBA and RS based algorithms. When θ equals 0, all the data items in the database have the same access probability,which resembles the Uniform distribution. With an increase of the value of θ , the data access pattern is getting skewed. When θ equals 1, it is the strict Zipf distribution A number of studies [4], [34], [35] have demonstrated that scheduling algorithms perform better when the data

(b) Fig. 7. Impact of the data access pattern and number of channels on channel allocation. (a) Impact of number of channels (K). (b) Impact of data access pattern (THETA).

access pattern is getting skewed. This is because more outstanding queries may wait for the same data item and hence each broadcast data item has higher potential to satisfy more queries. As a result, all algorithms perform better with the skewed data access pattern. Nonetheless, as discussed earlier, the MBA based algorithms maximize data sharing and avoid inter-channel allocation conflict, thereby showing superior performance over the RS based algorithms under different data access patterns. D. Impact of Batch Slot Size on Admission Control Recall that admission control followed by channel allocation are invoked at the beginning of each batch slot. When the batch slot size increases, the frequency of invoking these two schemes decreases. This simulation studies the impact of batch slot size k on the system performance and gives insight for system administrators to strike a balance between performance gain and system overhead. Fig. 8 shows that when the batch slot size increases, the real-time performance of all the algorithms declines. This is expected since the number of invocations of the admission and channel allocation mechanisms

602

IEEE TRANSACTIONS ON BROADCASTING, VOL. 60, NO. 4, DECEMBER 2014

Finally, to evaluate the performance of the proposed admission control and channel allocation schemes on existing real-time data scheduling algorithms, a wide range of simulations are conducted and the results are discussed. The results indicate that the proposed admission control and channel allocation schemes can provide satisfactory QoS without jeopardizing the system performance. A PPENDIX A I TEM L EVEL A DMISSION C ONTROL (ILAC) A LGORITHM

Fig. 8.

Algorithm 1: Item Level Admission Control (ILAC) Algorithm

Impact of batch slot size (k).

input : PriorityQ output: Admitted/Unprocessed queries in the PriorityQ 1

is reduced. Moreover, there is another cause that intrinsically degrades the performance. A client starts to listen to the channels only after a query is submitted. So, a query submitted during the transmission of a batch slot cannot be served by the data items allocated in the current batch slot because the corresponding client does not have the indexing information of the data items in the current batch slot, which has been transmitted immediately before the current batch slot begins. Therefore, the query has to wait until the end of the current batch slot before it can be served. In other words, a large batch slot incurs a long delay to queries towards satisfaction, which makes them more vulnerable to missing their deadlines or being rejected by the admission controller. It can also be observed from Fig. 8 that the MBA based algorithms degrade more slowly than the RS based algorithms as k increases. This result once again confirms the effectiveness of the MBA scheme in exploiting data sharing when the number of available slots for allocating data items increases. In addition, integrating admission control (ILAC) helps the MBA based algorithms to further improve their real-time performances (Fig. 8).

2 3

4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

22

VII. C ONCLUSION In this paper, we discuss the problem of admission control and channel allocation for real-time multi-item queries in ondemand data broadcast environments. Firstly, an admission control scheme ILAC is proposed. ILAC can provide better quality of service by effectively identifying queries which have no hope to be satisfied before their deadlines and those which can be served with a high statistical guarantee. Therefore, resources can be saved at both the server and client sides. More importantly, in case of failed queries, clients do not need to wait until their deadlines expire and are able to take remedial actions earlier. Secondly, a bipartite weighted matching model is proposed for channel allocation. The primal-dual method is modified to solve this weighted matching problem. Moreover, dynamic programming is utilized to reduce the average switching frequency among channels.

23 24 25 26 27 28

29 30 31 32 33 34 35

/* PriorityQ: Holds all the queries in the priority order */ /* AdmittedQ: Will be used as a temporary queue */ /* If Qi is admitted in previous invocations, Qi .AdmissionStatus = TRUE, otherwise, Qi.AdmissionStatus = FALSE */ K ←− the number of channels ; AdmittedQ ←− ∅ ; /* Initialize the AdmittedQ with all the admitted queries */ for Qi ∈ PriorityQ do if Qi .AdmissionStatus = TRUE then AdmittedQ ←− AdmittedQ ∪ {Qi }; /* Queries are passing through the admission/rejection condition for Qj ∈ PriorityQ and Qj .AdmissionStatus = FALSE do RejectionResult ←− RejectionProcess(Qj , AdmittedQ); if RejectionResult = TRUE then PriorityQ ←− PriorityQ − {Qj }; Qj is rejected; else m (t)

if SPRi (t) (= nj ) ≥ SPR then j Qj .AdmissionStatus = TRUE; Qj is admitted; else Qj is neither admitted nor rejected (remains unprocessed); RejectionProcess (Qj , AdmittedQ) sj ←− the slack time of query Qj ; AdmittedQ ←− AdmittedQ ∪ {Qj };  ←− AdmittedQ;  ←− the set of dummy single-item queries which covers the required items of queries in ; for Qm ∈  do sm ←− the smallest value of slack times of the queries in  that require the same item as Qm ; for Qm ∈  where sm ≥ sj do |Vm | ←− the number of the queries in  whose slack times are smaller than or equal to sm ; if |Vm | > sm ∗ K then Restore the system to the original state before the current loop of admission control of query Qj ; /* Rejection of query Qj */ AdmittedQ ←− AdmittedQ − {Qj }; Return: TRUE & AdmittedQ;

37

/* Non rejection of query Qj Return: FALSE & AdmittedQ;

38

END RejectionProcess (Qj , AdmittedQ)

36

*/

*/

ALI et al.: ADMISSION CONTROL-BASED MULTICHANNEL DATA BROADCASTING FOR REAL-TIME MULTI-ITEM QUERIES

603

A PPENDIX B 49

M ATCHING BASED A LLOCATION (MBA)

50

begin Part 4: Minimize switching cost through dynamic programming /* dynamic programming d

52 53 54

Algorithm 2: Matching Based Allocation (MBA)

1 2 3 4 5 6 7 8 9 10 11 12 13

else

57

for i ←− 1 to K do if channel ci is empty in slot t1 then c switch i ←− 0;

58 59 60

15

d

vertex tj , the weight wt i is initialized as 0 j for i ←− 1 to s do for j ←− 1 to s do

16 17

for j ←− 2 to n do

63

tj

then for i ←− 1 to K do if item dj is allocated on channel ci in slot tj then c

c c switch i ←− min{switch i , (switch i + 1|i  = i)};

65 66

c

22 23 24 25 26

j

tj

else

69 70

else

if j ≤ k AND wt i > 0 then j

31

wt i ←− wt i +  ;

d j

c

c , (switch i + 1|i  = i)}; tj−1 tj−1 c

l i ←− the channel in slot tj−1 that must be passed to tj c channel ci in slot tj such that switch i is minimized; tj c tj

switch i ←− min{switch i

74 75

else

76

c tj

switch i ←− ∞;

77

/* min_switch is the minimum switching frequency of the associated client of request Q */ c min_switch ←− min{switch i : i = 1, . . . , K};

79

tn

81 82

end

33

begin Part 2: Computation of maximum weighted matching /* primal-dual method for j ←− 1 to s do dmatchingj ←− the matched data item with time slot tj ; end

38

begin Part 3: Decision of Allocation /* check the edges in the maximum weighted matching */ counter ←− 0; for j ←− 1 to s do dmatching j > 0 then j

if wt

counter ←− counter + 1; /* di ∈ Q, and ti is the matched time slot for allocating item di , where 1 ≤ i ≤ n */

dcounter ←− dmatchingj ;

tcounter ←− tj ;

43 44 45 46

Allocate the required data items of Q on channels of matched slots in the next batch slot based on dynamic programming such that the switching cost is minimized;

47

end

lj tj

lj−1 ←− l ;

83

*/

37

42

ln ←− the channel in slot tn that must be passed such that min_switch is minimized; /* the sequence of channels in access order that minimize the switching frequency is l1 , l2 , . . . , ln */ for j ←− n downto 2 do

80

d j

32

48

73

d

30

41

for i ←− 1 to K do if channel ci is empty in slot tj then

72

78

d j

wt i ←− λtj ;

29

40

c switch i ←− ∞; tj

d j

else

28

39

tj−1

wt i ←− (K − λtj )(K + 1);

27

36

tj−1

c channel ci in slot tj such that switch i is minimized;

*/

71

21

tj

l i ←− the channel in slot tj−1 that must be passed to t

68

K ←− the number of channels; k ←− the number of time slots in the next batch slot; /* Constant  (0 <  < 1) is a weight factor to let the k time slots of the next batch slot be matched with higher possibility than the other slots */  ←− 0.1; for j ←− 1 to s do λtj ←− the number of free channels in time slot tj ; for di ∈ Q do if item di has been allocated in time slot tj in the current allocation then

20

d

j if item dj is allocated on some channel in slot tj , namely w > K + 

64

d j

19

35

c t1

switch i ←− ∞;

62

wt i ←− 0;

18

34

t1

else

61

67

Construct a complete bipartite graph including s slot vertices, n item vertices and s − n dummy item vertices; /* For any edge between item vertex di and slot

14

c t1

switch i ←− ∞;

56

/* all parameters are assumed to be zero as default value before reassignment */ begin Part 1: Construction of weighted bipartite graph /* weight assignment */ s ←− the number of time slots after the start of the next batch slot and before the deadline of request Q; n ←− the number of items requested by request Q; if s < n then Remove the new request and return; else if n > k then s ←− n; else if s > k then s ←− k;

t1

else

55

input : a new request Q and current broadcast channel allocation output: the allocation of required items of the request Q, or the decision of removing the request

*/

if item d1 is allocated on some channel in slot t1 , namely w 1 > K +  then t1 for i ←− 1 to K do



if item d1 is allocated on channel ci in slot t1 then c switch i ←− 0;

51

return {(lj , tj , dj ) : j = 1, 2, . . . , n};

84 85

end

R EFERENCES [1] D. Aksoy and M. Franklin, “Scheduling for large-scale on-demand data broadcasting,” in Proc. 17th IEEE Annu. Joint Conf. IEEE Comput. Commun. Soc. (INFOCOM), vol. 2. San Francisco, CA, USA, 1998, pp. 651–659. [2] V. L. Kakali, P. G. Sarigiannidis, G. I. Papadimitriou, and A. S. Pomportsis, “A novel HMM-based learning framework for improving dynamic wireless push system performance,” Comput. Math. Appl., vol. 62, no. 1, pp. 474–485, 2011. [Online]. Available: http://www.sciencedirect.com/science/article/pii/S0898122111004263

604

IEEE TRANSACTIONS ON BROADCASTING, VOL. 60, NO. 4, DECEMBER 2014

[3] W.-T. Chan, T.-W. Lam, H.-F. Ting, and P. Wong, “New results on on-demand broadcasting with deadline via job scheduling with cancellation,” in Computing and Combinatorics (Lecture Notes in Computer Science), vol. 3106, K.-Y. Chwa and J. Munro, Eds. Berlin, Germany: Springer, 2004, pp. 210–218. [Online]. Available: http://dx.doi.org/10.1007/978-3-540-27798-9_24 [4] J. Xu, X. Tang, and W. Lee, “Time-critical on-demand data broadcast: Algorithms, analysis, and performance evaluation,” IEEE Trans. Parallel Distrib. Syst., vol. 17, no. 1, pp. 3–14, Jan. 2006. [5] J. Wong, “Broadcast delivery,” Proc. IEEE, vol. 76, no. 12, pp. 1566–1577, Dec. 1988. [6] J.-Y. Ng, V. Lee, and C. Y. Hui, “Client-side caching strategies and on-demand broadcast algorithms for real-time information dispatch systems,” IEEE Trans. Broadcast., vol. 54, no. 1, pp. 24–35, Mar. 2008. [7] C. Liaskos, S. Petridou, and G. I. Papadimitriou, “Cost-aware wireless data broadcasting,” IEEE Trans. Broadcast., vol. 56, no. 1, pp. 66–76, Mar. 2010. [8] C. Liaskos, A. Xeros, G. I. Papadimitriou, M. Lestas, and A. Pitsillides, “Balancing wireless data broadcasting and information hovering for efficient information dissemination,” IEEE Trans. Broadcast., vol. 58, no. 1, pp. 66–76, Mar. 2012. [9] N. Saxena, K. Basu, S. K. Das, and C. M. Pinotti, “A dynamic hybrid scheduling algorithm with clients’ departure for impatient clients in heterogeneous environments,” in Proc. 19th IEEE Int. Parallel Distrib. Process. Symp. (IPDPS), Denver, CO, USA, 2005, p. 241.1. [Online]. Available: http://dx.doi.org/10.1109/IPDPS.2005.20 [10] B. Kalyanasundaram and M. Velauthapillai, “On-demand broadcasting under deadline,” in Algorithms—ESA 2003 (Lecture Notes in Computer Science), vol. 2832, G. Battista and U. Zwick, Eds. Berlin, Germany: Springer, 2003, pp. 313–324. [Online]. Available: http://dx.doi.org/10.1007/978-3-540-39658-1_30 [11] X. Wu and V. C. S. Lee, “Wireless real-time on-demand data broadcast scheduling with dual deadlines,” J. Parallel Distrib. Comput., vol. 65, no. 6, pp. 714–728, Jun. 2005. [Online]. Available: http://dx.doi.org/10.1016/j.jpdc.2005.01.004 [12] V. Kakali, P. Sarigiannidis, G. Papadimitriou, and A. Pomportsis, “DIAS: An adaptive push system, based on distributed learning automata,” in Proc. 15th IEEE Annu. Symp. Commun. Veh. Technol. (IEEE/SCVT), Antwerp, Belgium, 2008, pp. 1–6. [13] Y. Chung and M. Kim, “QEM: A Scheduling Method for Wireless Broadcast Data,” in Proc. 6th Int. Conf. Database Syst. Adv. Appl., Hsinchu, Taiwan, 1999, pp. 135–142. [14] H. Hung, J. Huang, J. Huang, and M. Chen, “Scheduling dependent items in data broadcasting environments,” in Proc. 2006 ACM Symp. Appl. Comput. (SAC), Dijon, France, pp. 1177–1181. [15] K. Shiomoto and N. Yamanaka, “A simple multi-QoS ATM buffer management scheme based on adaptive admission control,” in Proc. IEEE Glob. Telecommun. Conf. (GLOBECOM) Commun. Key Glob. Prosperity, vol. 1. London, U.K., 1996, pp. 447–451. [16] Z. Ali, W. Sheikh, E. K. P. Chong, and A. Ghafoor, “A scalable call admission control algorithm,” IEEE/ACM Trans. Netw., vol. 16, no. 2, pp. 424–434, Apr. 2008. [17] S. Karthik, C. Venkatesh, and A. Natarajan, “Congestion control in ATM networks using fuzzy logic,” in Proc. 18th Int. Parallel Distrib. Process. Symp., Santa Fe, NM, USA, Apr. 2004, pp. 162–167. [18] C. Madubata and M. Arozullah, “A deterministic call admission control protocol for bursty traffic in high-speed networks: Modeling and analysis,” in Proc. 2004 36th Southeastern Symp. Syst. Theory, Atlanta, GA, USA, pp. 220–224. [19] S. Jagannathan and J. Talluri, “Adaptive predictive congestion control of high-speed ATM networks,” IEEE Trans. Broadcast., vol. 48, no. 2, pp. 129–139, Jun. 2002. [20] R. Ramjee, D. Towsley, and R. Nagarajan, “On optimal call admission control in cellular networks,” Wireless Netw., vol. 3, no. 1, pp. 29–41, 1997. [21] Y. Fang and Y. Zhang, “Call admission control schemes and performance analysis in wireless mobile networks,” IEEE Trans. Veh. Technol., vol. 51, no. 2, pp. 371–382, Mar. 2002. [22] F. Alagoz, B. Vojcic, D. Walters, A. AlRustamani, and R. Pickholtz, “Fixed versus adaptive admission control in direct broadcast satellite networks with return channel systems,” IEEE J. Sel. Areas Commun., vol. 22, no. 2, pp. 238–249, Feb. 2004. [23] F. De Rango, M. Tropea, P. Fazio, and S. Marano, “Call admission control for aggregate MPEG-2 traffic over multimedia geo-satellite networks,” IEEE Trans. Broadcast., vol. 54, no. 3, pp. 612–622, Sep. 2008.

[24] S. Tzeng and C. Huang, “Threshold based call admission control for QoS provisioning in cellular wireless networks with spectrum renting,” in Novel Algorithms and Techniques in Telecommunications and Networking. Dordrecht, The Netherlands: Springer, 2010, pp. 17–22. [25] R. Kwan, R. Arnott, R. Trivisonno, and M. Kubota, “On pre-emption and congestion control for LTE systems,” in Proc. 72nd IEEE Veh. Technol. Conf. Fall (VTC-Fall), Ottawa, ON, Canada, 2010, pp. 1–5. [26] A. Spenst, K. Andler, and T. Herfet, “A post-admission control approach in wireless home networks,” IEEE Trans. Broadcast., vol. 55, no. 2, pp. 451–459, Jun. 2009. [27] M. Z. Chowdhury, Y. M. Jang, and Z. J. Haas, “Call admission control based on adaptive bandwidth allocation for wireless networks,” J. Commun. Netw., vol. 15, no. 1, pp. 15–24, Feb. 2013. [28] M. Saad, “Joint admission and power control for quality-ofservice in the wireless downlink,” J. Netw. Comput. Appl., vol. 34, no. 2, pp. 644–652, 2011. [Online]. Available: http://www.sciencedirect.com/science/article/pii/S1084804510001992 [29] J. Lv, V. Lee, M. Li, and E. Chen, “Admission control and channel allocation of multi-item requests for real-time data broadcast,” in Proc. 2012 IEEE Int. Conf. Embedded Real-Time Comput. Syst. Appl. (RTCSA), Seoul, Korea, pp. 202–211. [30] C. Liu and J. Layland, “Scheduling algorithms for multiprogramming in a hard-real-time environment,” J. Assoc. Comput. Mach., vol. 20, no. 1, pp. 46–61, 1973. [31] J. Lv, V. Lee, M. Li, and E. Chen, “Profit-based scheduling and channel allocation for multi-item requests in real-time on-demand data broadcast systems,” Data Knowl. Eng., vol. 73, pp. 23–42, Mar. 2012. [32] H. Schwetman, “CSIM19: A powerful tool for building system models,” in Proc. 33rd Conf. Win. Simulat., Arlington, VA, USA, 2001, pp. 250–255. [33] G. Zipf, Human Behavior and the Principle of Least Effort: An Introduction to Human Ecology. Cambridge, MA, USA: AddisonWesley Press, 1949. [34] D. Aksoy and M. Franklin, “R×W: A scheduling approach for largescale on-demand data broadcast,” IEEE/ACM Trans. Netw., vol. 7, no. 6, pp. 846–860, Dec. 1999. [35] J. Chen, K. Liu, and V. C. Lee, “Analysis of data scheduling algorithms in supporting real-time multi-item requests in on-demand broadcast environments,” in Proc. IEEE Int. Parallel Distrib. Process. Symp. (IPDPS), Rome, Italy, May 2009, pp. 1–8.

G. G. Md. Nawaz Ali (S’11) received the B.Sc. degree in computer science and engineering from the Khulna University of Engineering and Technology, Khulna, Bangladesh, and the Ph.D. degree in computer science from the City University of Hong Kong, Hong Kong, in 2006 and 2013, respectively. He is currently an Assistant Professor with the Khulna University of Engineering and Technology. His current research interests include wireless broadcasting, mobile computing, and ad hoc networking with a focus on vehicular ad hoc networking.

Victor C. S. Lee (M’92) received the Ph.D. degree in computer science from the City University of Hong Kong, Hong Kong, in 1997. He is currently an Assistant Professor with the Department of Computer Science, City University of Hong Kong. His research interests include data management in mobile computing systems, real-time databases, and performance evaluation. He was a Chairman of the Computer Chapter, IEEE Hong Kong Section from 2006 to 2007. He is a member of ACM.

ALI et al.: ADMISSION CONTROL-BASED MULTICHANNEL DATA BROADCASTING FOR REAL-TIME MULTI-ITEM QUERIES

Edward Chan received the B.Sc. and M.Sc. degrees in electrical engineering from Stanford University, Stanford, CA, USA, and the Ph.D. degree in computer science from Sunderland University, Sunderland, U.K. He worked with the Silicon Valley, CA, USA, for a number of years in the design and implementation of computer networks and realtime control systems before joining City University of Hong Kong, where he is currently an Associate Professor. His current research interests include performance evaluation of high speed networks, mobile data management, power-aware computing, and network management.

605

Jingsong Lv received the Ph.D. degree from the School of Computer Science and Technology, University of Science and Technology of China (USTC), Hefei, China, in 2012, and the joint Ph.D. degree between the City University of Hong Kong, Hong Kong, and USTC in the same year. He is currently a Researcher with the iFlytek Research Labs of USTC iFlytek Company, Ltd., Hefei, China. His main research interests include mobile data mining and applications, recommendation system, semantic computing, and mobile computing.

Minming Li (M’13) received the B.Eng., M.Eng., and Ph.D. degrees from Tsinghua University, Beijing, China. He is currently an Assistant Professor with the Department of Computer Science, City University of Hong Kong, Hong Kong. His research interests include wireless networks, algorithms design and analysis, combinatorial optimization, scheduling, key management, and computational economics.

Kai Liu (M’12) received the Ph.D. degree in computer science from the City University of Hong Kong, Hong Kong. He is currently an Assistant Professor with the College of Computer Science, Chongqing University, Chongqing, China. From 2010 to 2011, he was a Visiting Scholar with the Department of Computer Science, University of Virginia, Charlottesville, VA, USA. From 2011 to 2014, he was a Post-Doctoral Fellow with Nanyang Technological University, Singapore, City University of Hong Kong, and Hong Kong Baptist University, Hong Kong. His research interests include real-time scheduling, mobile computing, intelligent transportation systems, and vehicular cyber-physical systems.

Jun Chen received the Ph.D. degree in computer science from Wuhan University, Wuhan, China, in 2008. She was a Senior Research Associate with the Department of Computer Science, City University of Hong Kong, Hong Kong, from 2008 to 2009. She was a Visiting Fellow with the Department of Information System, City University of Hong Kong, in 2012. She is currently an Associate Professor with the School of Information Management, Wuhan University. Her research interests include mobile computing and data management in wireless networks.

Suggest Documents