초록
VOD 서버에 서비스를 요청하는 단말장치의 종류가 다양해짐으로 인해 VOD 서비스 사업자가 제공해야 하는 해상도 버전의 종류 역시 다양해지고 있다. 단말장치가 서비스를 요청할 때 서버는 단말장치에 맞는 해상도 버전으로 서비스를 제공해야 하는데 대개의 경우 서버의 저장공간의 용량이 제한되어 있기 때문에 비디오별로 모든 해상도 버전들을 저장하고 있기는 어렵다. 단말장치가 서버에 저장되어 있는 해상도 버전을 요청한 경우라면 바로 서비스가 가능하다. 하지만 단말장치가 서버에 저장되어 있지 않은 해상도 버전을 요청했다면 저장되어 있던 버전을 이용해 해상도를 변환한 후 서비스를 해주어야 한다. 만약 서버가 해상도를 변환하는 빈도가 높아 CPU 가용성이 충분하지 않다면 다른 단말장치들의 서비스 요청에 바로 응할 수 없게 된다. 따라서 서버에 저장되는 파일들을 CPU 사용률을 줄일 수 있는 해상도의 버전들로 저장하여 CPU 가용성을 높인다면 보다 많은 단말장치의 요청을 허용할 수 있을 것이다. 본 논문에서는 한정된 저장용량을 가진 VOD 서버가 단말장치의 서비스 요청들을 가능한 많이 허용하기 위해 저장해야 할 각 비디오의 해상도 버전들을 분기한정 기법을 이용하여 찾는 알고리즘을 제시한다.
Recent advances in communication and multimedia technologies make it possible to provide video-on-demand(VOD) services and people can access video servers over the Internet at any time using their electronic devices, such as PDA, mobile phone and digital TV. Each device has different processing capabilities, energy budgets, display sizes and network connectivities. To support such diverse devices, multiple versions of videos are needed to meet users' requests. In general cases, VOD servers cannot store all the versions of videos due to the storage limitation. When a device requests a stored version, the server can send the appropriate version immediately, but when the requested version is not stored, the server first converts some stored version to the requested version, and then sends it to the client. We call this conversion process transcoding. If transcoding occurs frequently in a VOD server, the CPU resource of the server becomes insufficient to response to clients. Thus, to admit as many requests as possible, we need to maximize the CPU availability. In this paper, we propose a new algorithm to select versions from those stored on disk using a branch and bound technique to maximize the CPU availability. We also explore the impact of these storage management policies on streaming to heterogeneous users.