ARTICLE IN PRESS
Optik
Optics
Optik 121 (2010) 793–799 www.elsevier.de/ijleo
An efficient scheme for optimizing channel utilization in OBS networks Amit Kumar Garga,, R.S. Kalerb a
School of Electronics and Communication Engineering, Shri Mata Vaishno Devi University, Jammu and Kashmir, India School of Electronics and Communication Engineering, Thapar University, Patiala, Punjab, India
b
Received 13 May 2008; accepted 10 September 2008
Abstract Optical burst switching (OBS) is an emerging technology that allows variable size data bursts to be transported directly over DWDM links. In order to make OBS a viable solution, the wavelength scheduling algorithms need to be able to utilize the available wavelengths efficiently, while being able to operate fast enough to keep up with the burst incoming rate. Unfortunately, horizon scheduling cannot utilize the voids created by previously scheduled bursts, resulting in low bandwidth utilization. To date, Min-SV is the fastest scheduling algorithm that can schedule wavelengths efficiently. However, its complexity is O (log m) and it requires 10 log (m) memory accesses to schedule a single burst. This means that it can take upto several microseconds for each burst request, which is still too slow to make it a practical solution for OBS deployment. In this paper, an efficient scheme has been proposed for optimizing channel utilization in OBS networks. In the proposed approach, a burst is represented by an interval of time. The process of scheduling a number of bursts, thus, turns to be a process of fitting a set of the corresponding time intervals on a channel time line that represents a channel-time resource. By doing so, the scheduling process can be formulated as a combinatorial optimization problem. Then, graph theory is applied to schedule as many non-overlapping intervals as possible onto the channel time line. The underlying concept of the proposed scheduling scheme is that of briefly delaying the scheduling of a burst so that a much better decision can be made about a number of bursts all-together. This scheme is shown, through simulations, to improve performance in terms of burst loss probability, channel utilization, fairness-control and data throughput over existing schemes. Thus the proposed scheme is well suited for high performance networks in terms of reliability. r 2009 Elsevier GmbH. All rights reserved. Keywords: Optical burst switching; Burst scheduling-algorithms; Scheduling system model; Combinatorial optimization
1. Introduction To meet the increasing bandwidth demands and reduce costs, several optical network paradigms have been under intensive research. Of all these paradigms, Corresponding author.
E-mail address:
[email protected] (A.K. Garg). 0030-4026/$ - see front matter r 2009 Elsevier GmbH. All rights reserved. doi:10.1016/j.ijleo.2008.09.024
optical circuit switching (e.g., wavelength routing) is relatively easy to implement but lacks efficiency to cope with the fluctuating traffic and the changing link state; optical packet switching (OPS) is a natural choice, but the required optical technologies such as optical buffer and optical logic are too immature for it to happen anytime soon. A new approach called optical burst switching (OBS) that combines the best of optical circuit
ARTICLE IN PRESS 794
A.K. Garg, R.S. Kaler / Optik 121 (2010) 793–799
switching and optical packet switching was proposed in [1,2]. OBS has been receiving an increasing attention as a potentially bandwidth-efficient approach for future optical core networks. In OBS networks, an ingress node assembles incoming packets into data bursts (DBs). Along with each of these created DBs, the ingress node also generates a burst header packet (BHP) that contains control information like channel identification, destination node identification and the DB length and DB arrival time. The DBs will later be disassembled into the original packets at an egress node. Unlike packet switched networks, OBS networks separate each DB from its control information (i.e., BHP) and transmit them on different channels. A channel carrying DBs is referred to as a data channel; while, a channel carrying BHPs is referred to as a control channel. Upon receiving the BHP, intermediate nodes allocate resources based on the information it carries. While a BHP is sent out to reserve network resources along a path, transmission of the DB is deferred for some time period, which is known as the ‘‘offset-time’’. In OBS networks, a key problem is thus to design efficient algorithms for scheduling bursts (or more precisely their bandwidth reservation). An ideal scheduling algorithm should be able to process a control packet fast enough before the burst arrives, and yet be able to find a suitable void interval (or a suitable combination of a fiber delay line (FDL) and a void interval) for the burst as long as there exists one. Otherwise, a burst may be unnecessarily discarded either because a reservation cannot be completed before the burst arrives or simply because the scheduling algorithm is not smart enough to make the reservation. Given the fact that OBS uses one-way reservation protocols such as just-enough-time (JET) and that a burst cannot be buffered at any intermediate node due to the lack of optical RAM (a FDL, if available at all, can only provide a limited delay and contention resolution capability), burst loss performance is a major concern in OBS networks. Hence, an efficient scheduling algorithm that can reduce burst loss by scheduling bursts fast and in a bandwidth efficient way is of paramount concern in OBS network design. So far, two well known scheduling algorithms have been proposed. Horizon [3] does not utilize any void intervals and thus is fast but not bandwidth efficient. On the other hand, latest available unused channel with void filling (LAUC-VF) [4] can schedule a burst as long as it is possible but has a slow running time. In this paper, a novel scheduling technique has been proposed that relies on BHP batching to gain additional information and prior details about a batch of incoming DBs before commencing to schedule them. The proposed scheduling is a novel scheme in which the task of serving the scheduling needs of arriving requests is not carried out immediately on one-by-one
basis. Instead, scheduling is delayed for certain period of time during which BHP arrivals are gathered. Then, the scheduler processes all these requests at once with the goal of optimizing channel utilization. The proposed scheduling technique could be regarded as an approach, among others, that attempts to push scheduling efficiency to some limit with the goal of identifying the extents of OBS benefits in a network environment.
2. Prior solutions and their limits Several scheduling techniques have been proposed for OBS networks. Earlier proposals were mainly based on the concept of Horizon scheduling [3], where the scheduler attempts to reserve channels for a data burst immediately after the arrival of a header cell. If the attempt is successful, resources will be reserved right away until a burst transmission is due to complete. The only information need to be kept is the latest time the channel was utilized. This scheme, however, cannot utilize a transmission channel during the time gaps between scheduled transmissions. LAUC-VF [4] can produce efficient channel schedules but it takes O (m) time to schedule a burst, which is too slow to be practical. The minimum starting void (Min-SV) algorithm [5,6] can produce the same wavelength schedule as LAUC-VF and its complexity is O (log m) where m is the number of voids per channel. This is a significant improvement over LAUC-VF. However, Min-SV still requires 10 log (m) memory accesses for each burst request. It is not unusual that a system will have to keep track of 100 K to a million voids. This means that Min-SV takes up to a few microseconds to schedule a single burst, which is still too slow to meet the stringent burst scheduling requirement. Later, the concept of delayed reservation was introduced where an offset time is maintained between DB and BHP transmissions. Protocols such as JET and just-in-time (JIT) were based on this concept [2–7] and aimed at allocating transmission resources only upon arrival of the DB and for the time period specified in its BHP. This made it possible to fit a future DB with the right size into a vacant transmission gap between the already scheduled DBs. Delayed reservation based with an offset time scheduling is more resource efficient than horizon-based scheduling and results in lower burst dropping probability. Yet, it reserves resource immediately after the BHP is received and processed. Since the scheduler processes one request at a time, delayed reservation resembles an on-line processing mechanism, in which no future information is available to support the process of decision making.
ARTICLE IN PRESS A.K. Garg, R.S. Kaler / Optik 121 (2010) 793–799
795
Incoming BHPs
Basket 1 Classifier With Channel Assignment
BHP Collector (Batcher) Collected BHPs
Data channel Scheduler
Channel Schedule
Classified BHPs
Incoming BHPs
BHP Buffer
Basket 2
Fig. 1. Proposed scheduling system model.
Basket N
3. Proposed scheduling system model In the proposed scheduling system model, a channel is represented by a time line. The proposed scheduling scheme partitions this channel time line into small time windows where a channel scheduling decision can take place on a per-window basis. Only those DBs that intend to utilize channel during a certain channel window, not the others, are scheduled together. A BHP, in this scheme, thus serves as a DB agent in requesting channel resources for a particular channel window. To accomplish such a goal, the proposed scheduling system requires three basic building blocks: a BHP collector (batcher) module, a classifier with channel assignment module and a channel scheduler, as illustrated in Fig. 1. (A) BHP collector (batcher) module: In order to be eligible for scheduling in a certain time window, a BHP must arrive prior to the closing time of this window. The BHP batcher scrutinizes the BHPs, by looking at their DBs arrival times and durations to determine the channel window the DBs are supposed to be transmitted within. The BHP batcher then puts the BHP in an appropriate basket as shown in Fig. 2; each basket represents each channel time window (i.e., it is a one-toone mapping between a channel time window and a basket.). For each basket, BHPs may be sorted, e.g., by their data burst arrival times. This results in assisting BHP classification and channel assignment for multiplechannel scheduling systems. Once the closing time of each channel window is reached, the corresponding basket will be removed from the BHP grouper and no other BHPs will be eligible for scheduling consideration in that window. (B) Classifier with channel assignment module: A schematic diagram of the classifier with channel assignment module is depicted in Fig. 3. It performs channel (or wavelength) allocation and/or service differentiation. Service differentiation can be provided, for examples, by employing a priority scheme, a weighted round robin discipline, a weighted fair queue, or a pre-assigned proportion of BHPs from each class. After being grouped, BHPs are classified into classes and placed in the appropriate queues. In case of a single class, there is only
Fig. 2. BHP batcher model.
a single queue. The channel (wavelength) assignment module then hands over BHPs to the appropriate channel schedulers. This is the place where channel management leads to efficient resource utilization and service differentiation. In the single channel case there is only one channel scheduler and the channel assignment task is reduced to allocation of bursts, of various classes, on this channel. (C) Channel scheduler module: The channel scheduler module schedules BHPs (based on a specification of the start and end times of their corresponding DBs). The primary objective is to maximize the number of BHPs (and, accordingly, DBs) to be scheduled in the channel time window. For a set of BHPs/DBs, the scheduler first establishes interval representation profile, as shown by the example in Fig. 4. The figure shows seven DBs with various start times and durations. Once the interval representation profile is created, it is transformed to an interval graph. Fig. 5 depicts the interval graph for the example of Fig. 4. Each vertex in the graph represents a burst. There exists an edge to connect two vertices if, and only if, their corresponding bursts are overlapped, otherwise there is no edge between these vertices. For example, DBs 1 and 2 are overlapped, there is thus an edge connecting vertices 1 and 2 in Fig. 5. On the other hand, there is no edge between vertices 4 and 5 since these DBs do not overlap. Based on the interval graph, the channel scheduler applies an appropriate algorithm to obtain the set of maximum number of non-overlapping intervals (under whatever desired constraints). For example, there are two possible sets of maximum nonoverlapping DBs. The first set is {3, 4, 5} and the other set is {1, 3, 4}. The channel scheduler can choose either batch depending on the criteria deployed in the algorithm.
4. Scheduling system operation As mentioned earlier, the channel time (as the channel resource) is partitioned into a sequence of equal time
ARTICLE IN PRESS 796
A.K. Garg, R.S. Kaler / Optik 121 (2010) 793–799
Queue Class 1
BHP Basket (collection
Queue Class 2
Queue Class N
Data Scheduler 1
Wavelength Assignment Module
Data Scheduler 2
Data Scheduler N
Fig. 3. Classifier with channel assignment model.
4.1. Proposed scheduling algorithm
1 2 3 4 5 6 7
Fig. 4. Interval representation.
4
1
5
7 6
3
2
Fig. 5. Interval graph.
windows. During each window, a core node (the BHP batcher therein) keeps collecting BHPs arriving over the control channel. To be eligible for being scheduled in this time window, the BHP must arrive before its closing time. Typically, the window closing time is well before of the actual channel time during which DBs would be transmitted (taking into consideration other processing times such as scheduling time). The sequence of processes as seen by a core node for a singlechannel scheduling window involves: First, BHPs are batched. Then, classification with channel assignment takes place. Once the data channel and a class of service are identified, BHPs are scheduled and a set of new BHPs are forwarded to the downstream. Finally, when DBs arrive, they are forwarded according to the schedule plan (The scheduling must finish by some amount of time before the DBs forwarding process actually starts).
An efficient scheduling algorithm should be able to fit a new reservation period into an existing void interval whenever possible to increase the bandwidth utilization and decrease the data loss rate. The interval-scheduling is an algorithm to be carried out by the channel scheduler to schedule DBs onto a channel. The basic task of this algorithm is to create an interval graph out of the set of DBs delivered by the classification and channel assignment module. The channel scheduler then uses this graph to obtain the maximum number of bursts that can be scheduled. To achieve the goal, the scheduler leverages the unique properties of an interval graph in order to find a clique of maximum size in graph i.e., maximum stable set of the graph. A clique in an undirected graph G ¼ (V, E) is a subset V 0 V of vertices, each pair of which is connected by an edge in E. The clique problem is an optimization problem of finding a clique of maximum size in graph. The maximum clique problem (MCP) is a hard combinatorial problem, classified as NP-Complete. The MCP has many practical applications in science and engineering. These include project selection, classification, fault tolerance, coding, computer vision, economics, information retrieval and signal transmission. A major application of the MCP occurs in the area of coding theory [8–10]. A maximum clique is a maximal clique that has the maximum cardinality. No polynomial-time algorithm has yet been discovered for an NP-Complete problem, nor has any one yet been able to prove a super polynomial-time lower bound for any of them. The main goal of this algorithm is to find a clique of maximum size in graph using a verification and elimination method. If the algorithm gives an output then it will be the maximum size clique in that given graph, but it is not possible to provide an upper bound for the time it will take. Hence the algorithm is heuristic. The Heuristic interval scheduling algorithm is used to find a clique of maximum size in graph (as shown in Fig. 6). In a graph of size N, there are exactly NCK
ARTICLE IN PRESS A.K. Garg, R.S. Kaler / Optik 121 (2010) 793–799
797
If the maximum size of any vertex is M, there cannot be a clique of size 4M+1. If there is a clique of size K there are cliques of any sizeoK in the same graph. Conversely, if there is no clique of size K, there will not be a clique of size 4K.
4.2. Description of the algorithm The number of vertices in the clique is known as the size, N of the clique. There are three procedures known as FINDCLIQUE, SELECT and ISCLIQUE are used in the algorithm. First one calls the second algorithm and second in turn calls the third. The output will be the maximum clique. The different steps of the FINDCLIQUE algorithm are summarized as follows: (1) It finds the maximum degree m, sets lb to 0, ub to m and (lb+ub)/2 to mid. (2) Check whether there is a clique of size mid+1 If it is there, no need to verify the sub-graphs of sizepmid and hence sets lb to mid+1. If it is not there no need to consider the subgraphs with size 4 mid. Hence sets ub to mid1. (3) If lbpub, sets (lb+ub)/2 to mid and repeats the step (2). (4) The clique, which is found just before when lb becomes 4 ub is the clique of maximum size in the given graph G. (5) Print the size and vertices in that clique. The checking of the existence of the clique of size mid +1 (step (2)) is made by the SELECT algorithm. This algorithm finds the different combinations of the selected vertices and calls the algorithm ISCLIQUE for checking whether that combination of the vertices form a clique or not. If the degree of every vertex, in the induced sub-graph by that combination is equal to mid, ISCLIQUE returns TRUE.
Fig. 6. Heuristic interval scheduling algorithm.
sub-graphs of size K. So the total number of sub-graphs in graph G is given by: G¼
N X
N CK
¼ 2N
(1)
K¼1
This is exponential. So verifying all of the sub-graphs will take a long time, because number of verifications required is not a polynomial in N. For decreasing the time required, some of the verifications can be avoided. The proposed algorithm uses the following important properties of clique.
Every graph contains at least one clique. In a clique of size M, all the vertices have the degree M1.
4.3. Time complexity of the algorithm The algorithm FINDCLIQUE works similar to that of binary search. For maximum degree M, the time complexity of the algorithm FINDCLIQUE is O (log2 (M)), which is polynomial. If the size of the sub-graph to be verified is K, the time complexity of the algorithm ISCLIQUE is O (K2), which is again polynomial. The algorithm SELECT is based on combinations. In worst case, all the NCK combinations may have to be verified. But whenever a clique is found, the algorithm will return, neglecting the remaining combinations. So, average time complexity of this algorithm is practically polynomial.
ARTICLE IN PRESS A.K. Garg, R.S. Kaler / Optik 121 (2010) 793–799
7
4
2
0.5
12
11
1 8
14
9
5 13
3 6
10
Burst Loss Probability
798
JIT-Scheduling Heuristic Interval Scheduling
0.4 0.3 0.2 0.1
Fig. 7. NSFNET with 14 nodes.
0.2
0.4
0.6
0.8
1.0
Mean Offered Load
The performance of the proposed scheme has been evaluated using NS-2 simulator [11] on the NSF14Nodes network (as shown in Fig. 7). Assume that each node is composed of both an edge router and a core router and each link has some data channel and one control channel and the transmission rate on each channel is 10 Gbps. At each edge router, the aggregate packet arrival process is superimposed by independent ON/OFF source. ON and OFF periods are exponentially distributed and the minimum length of ON period is 1 and that of OFF period is 0. The length of bursts is a fixed value of 15 000 bytes. An immediate scheduling scheme (JIT/JET-like scheduling with a single channel [7]), the counterpart, is used as a baseline scheme representing one of the best currently known schemes. A channel bit-rate is 10 Gb/s with scheduling time window to 200 ms. Performance metrics such as: burst loss probability, channel utilization, fairness-index and data throughput have been studied.
Fig. 8. Burst loss probability for exponential inter-arrival time and burst length.
0.5 Channel Utilization
5. Performance evaluation
Heuristic Interval Scheduling JIT-Scheduling
0.4 0.3 0.2 0.1 0.0
0.2
Wavelengths ¼ 3–12 per fiber Control burst processing time ¼ 2.5–4 ms Switching time ¼ 12 ms Propagation delay on a link ¼ 0.2–1 ms
Fairness-Index
0.8
1.0
Heuristic Interval Scheduling JIT-Scheduling
0.8 0.6 0.4 0.2 0.0 0.0
6. Results
0.6
Fig. 9. Channel utilization for exponential inter-arrival time and burst length.
1.0
5.1. Simulation parameters
0.4
Mean Offered Load
0.2
0.4 0.6 Input Load
0.8
1.0
Fig. 10. Fairness index vs. load.
Fig. 8 compares the burst-loss probability of the proposed scheduling with that of the JIT-scheduling. Both probability distributions of the source ‘‘on’’ and ‘‘off’’ states are exponentially distributed. The results show that the proposed scheduling outperforms the JIT scheduling over the entire range of the mean offered load. The gain increases slightly with load. Upto 9% improvement in burst loss probability can be achieved, particularly in the full load to overload region. Fig. 9 shows a comparison between the two schemes in regards to channel utilization. Both the ‘‘on’’ and ‘‘off’’ states are exponential distributed. OBS proposed
scheduling performs better also in terms of channel utilization. The improvement is close to 8.9% over the entire range of mean offered load from 0.1 to 0.8. An advantage of the proposed OBS proposed scheduling over the JIT-scheduling is shown, specifically at high loads, i.e., from 0.8 to 1.2. Fig. 10 shows that the proposed scheme can keep Fairness Index at about 1.0, vise versa. Through Fig. 11, it is clear that better data throughput performance has been obtained by the proposed scheme.
ARTICLE IN PRESS A.K. Garg, R.S. Kaler / Optik 121 (2010) 793–799
References
1.0 Heuristic Interval Scheduling JIT-Scheduling
0.8 Throughput
799
0.6 0.4 0.2 0.0 0.0
0.2
0.4 0.6 Input Load
0.8
1.0
Fig. 11. Throughput vs. load.
7. Conclusions A novel burst scheduling approach has been proposed for optimizing channel utilization in OBS networks. In this approach, DBs are scheduled in batches. The problem of DB scheduling is mapped to a combinatorial optimization problem of scheduling DB time intervals on a channel time line. The heuristic interval scheduling algorithm is utilized to obtain the maximum number of non-overlapping bursts. Performance comparison of proposed scheme with existing scheduling schemes has been performed. The results showed the advantages of proposed scheme in terms of burst loss probability, channel utilization, fairness-control and data throughput. In future, the impact of network dimensioning and adaptive flow of bursts shall be performed with the proposed approach.
[1] M. Yoo, C. Qiao, A high speed protocol for bursty traffic in optical networks, SPIE’s All-Optical Communication Systems: Architecture, Control and Protocol Issues 3230 (1997) 79–90. [2] C. Qiao, M. Yoo, Optical burst switching (OBS) – a new paradigm for an optical internet, Journal of High Speed Networks 8 (1999) 69–84. [3] J. Turner, Terabit burst switching, Journal of High Speed Networks 8 (1) (1999) 3–16. [4] Y. Xiong, M. Vandenhoute, H.C. Cankaya, Control architecture in optical burst-switched WDM networks, IEEE Journal on Selected Areas in Communications 18 (2000) 1838–1851. [5] J. Xu, C. Qiao, J. Li, G. Xu, Efficient channel scheduling in optical burst switched networks, in: Proceedings of the IEEE INFOCOM, 2003. [6] J. Xu, C. Qiao, J. Li, G. Xu, Efficient burst scheduling algorithms in optical burst-switched networks using geometric techniques, IEEE Journal on Selected Areas in Communication 22 (9) (2004) 1796–1881. [7] J.Y. Wei, R.I. McFarland, Just-In-Time signaling for WDM optical burst switching networks, IEEE Journal of Lightwave Technology 18 (12) (2000) 2019–2037. [8] P.R.J. Ostergard, A fast algorithm for the maximum clique problem, Discrete Applied Mathematics 120 (2002) 197–207. [9] D.R. Wood, An algorithm for finding a maximum clique in a graph, Operational Research Letters 21 (1997) 211–217. [10] J.R. Ramirez Alfonsin, B.A. Reed, Perfect Graph, WileyInterscience Series, Wiley, Chichester, England, 2001. [11] Network Simulator, NS-2, available at /http://www.isi. edu/nsnam/nsS.