An increasing number of high performance research network testbeds and production networks have the capability of provisioning dedicated channels for high speed data transfer in support of large scale scientific applications. Each dedicated channel in these networks typically consists of one or more physical links that are shared by multiple applications in both time and bandwidth through in advance reservation. The design of efficient bandwidth scheduling algorithms is critical to maximizing the utilization of dedicated network resources and meeting diverse end-to-end transport performance requirements. The topology of a dedicated network is represented by a graph, where each link maintains a list of residual bandwidths specified as segmented constant functions of time. Given a graph with an aggregated time-bandwidth table combining the reservation information on all links, designated source, and destination vertices, and a specified data size, we formulate and investigate five bandwidth scheduling problems to minimize the data transfer end time under different path and bandwidth constraints: (i) variable path with variable bandwidth (VPVB), which computes the widest (highest bandwidth) path in each time slot; (ii) fixed path with variable bandwidth (FPVB), which computes a fixed path with varying bandwidths across different time slots; (iii) variable path with fixed bandwidth (VPFB), which computes one path in each time slot with the same bandwidth; (iv) fixed path with fixed bandwidth (FPFB), which computes a fixed path with a constant bandwidth; and (v) multiple fixed paths with fixed bandwidths (MFPFB), which computes multiple concurrent fixed paths with constant bandwidths. Among these problems, VPVB represents the most flexible scenario where the network resources are fully utilized and the minimal transfer end time is achieved, while FPFB imposes the most stringent transport conditions by fixing both path and bandwidth. We design an optimal algorithm for each of these scheduling problems. VPVB is solved using an extension of the classical Dijkstra's algorithm, and FPVB is solved using Maximum Permutation Algorithm, which tries all possible permutations of throughputs at different time slots to obtain the minimal transfer end time. The algorithm for VPFB, FPFB, and MFPFB are based on Adjacent Time Slots Search, which finds the minimum transfer end time by examining the possibility of data transfer in any number of contiguous time slots. All these algorithms are of polynomial or pseudo polynomial time complexity with respect to the network size and the total number of time slots in a bandwidth reservation table.
Read full abstract