|Title:||Proxy servers for Internet multimedia streaming|
|Subject:||Hong Kong Polytechnic University -- Dissertations|
Streaming technology (Telecommunications)
|Department:||Department of Electronic and Information Engineering|
|Pages:||xiv, 135 leaves : ill. (some col.) ; 30 cm|
|Abstract:||In the topology of today's World Wide Web, proxy servers have been used extensively to reduce network traffic by cutting down the amount of repetitive information. However, traditional web proxy servers do not support multimedia streaming. One reason for this is that the general scheduling strategy adopted by most of these Web proxy servers does not provide any real-time support. Another reason concerns resource management. Such servers are required to handle hundreds of simultaneous connections between media servers and clients. Every video stream that arrives at the server and is exported from it follows a specific arrival and delivery schedule. While arrival schedules compete for incoming network bandwidth, delivery schedules also compete for outgoing network bandwidth. As a result, such servers have to provide sufficient buffer and disk cache space for storage in addition to the memory space, disk space, disk bandwidth, and computational resources they must provide. In order to optimize the throughput, it is necessary to govern the usage of these resources properly. Furthermore, cache and trash decisions for a web proxy are no longer applicable to video streams. Decision-making for cache and trash in a web proxy is based on web objects such as text documents, images and files whose size rarely exceeds several hundred megabytes. However, when it comes to video streaming, the delivered video data can easily be in the range of gigabytes for MPEG-I, and even several gigabytes for MPEG-II. Even with today's computer power, it would be disastrous to have cached or trashed an incorrect video stream. In the light of this, the concept of video staging was proposed for the video streaming proxy service. This advances the cache-or-none concept in traditional proxy design by dividing a video stream into two parts. The first part of the video stream will be cached in the proxy while the other will remain in the video streaming server. They will be combined and sent to the client at their next cache-hit. This eases the cache and trash decision, since it can immediately be based on a smaller object. Nevertheless, such a scheme also complicates resource management. In practice, an admission control scheme is responsible for the management of these resources. During the admission of a new request, it will evaluate the resource requirements of the requested stream and check whether the proxy server is able to support that requirement before accepting. Then, it will reserve those required resources so that a proper transmission of the stream can be guaranteed. A simple scheme can allot these reservations based on the maximum requirement, but it will not be able to achieve a satisfactory utilization rate, since the actual requirement varies from time to time and underutilization is likely. In order to improve the utilization rate, more advanced admission control schemes become necessary. In short, multimedia proxy servers have a different design compared with traditional web proxies. In this research work, we deal with two aspects of design in such video streaming proxy servers. The first aspect is resource management, which includes processing power, memory, network and disk resources. The second aspect is admission control. In regard to processing power management, we first describe our development work with a practical video streaming proxy server that supports real-time multimedia applications based on the concept of contractual scheduling. Moreover, we discuss the group scheduling mechanism which enables the transfer of processing power between tasks, something beyond the capabilities of traditional schedulers. By this mechanism we have achieved a substantially improved performance, particularly when both time-constrained and non-time-constrained processes coexist within the proxy server. For the management of the other resources, we begin by analyzing the properties of a traditional smoothing algorithm and a video staging algorithm. Then, based on the smoothing algorithm, we develop a pair of offline and online video staging smoothing algorithms for video streaming proxy servers. These two algorithms give rise to the proposed video staging arrival schedule based on the delivery schedule. Under the auspices of the arrival and delivery scheduling pair we have achieved a better resource utilization rate for the proxy server against different parameter sets. It is also interesting to note that the resource usage becomes transferable under these algorithms: they facilitate usage transfer between network bandwidth, disk bandwidth, and memory space. Regarding admission control, scheduling schemes such as Constant-Data-Length (CDL) and Constant-Time-Length (CTL) were recently proposed for the purpose of improving the utilization though some two-level scheduling schemes. However, these approaches usually focus on disk bandwidth alone and ignore the memory constraint. In addition, these two-layer approaches can only reduce the waste. In order to improve utilization, we have analyzed the relationship between the sum of all schedules and their actual resource requirements. Based on this relationship, we have devised a grand scale scheduling approach by taking both the disk bandwidth and memory usage into account. In this way, we are able to re-allocate the unused resources reserved for a video stream to another stream that requires more resources, thus reducing their overall reservation requirement. The resource availability-based admission control scheme can only provide a binary accept or reject decision to the video service request. However, our study shows that an acceptance of particular streams may jeopardize the capacity of a video streaming proxy server. That is, a server may no longer accept any more video streams after the acceptance of a particular stream - a black sheep. If we are able to detect such streams in advance, we can maintain the server capacity by rejecting them. However, this will lead to discrimination. When it comes to a multiple server platform, we may divert those particular streams to another server to avoid discrimination. Yet, there are numerous settings available. As a result, we have developed several schemes to facilitate such diversion and we have determined their strengths and weaknesses in different scenarios.|
|Rights:||All rights reserved|
As a bona fide Library user, I declare that:
- I will abide by the rules and legal ordinances governing copyright regarding the use of the Database.
- I will use the Database for the purpose of my research or private study only and not for circulation or further reproduction or any other purpose.
- I agree to indemnify and hold the University harmless from and against any loss, damage, cost, liability or expenses arising from copyright infringement or unauthorized usage.
By downloading any item(s) listed above, you acknowledge that you have read and understood the copyright undertaking as stated above, and agree to be bound by all of its terms.
Please use this identifier to cite or link to this item: