KR100701003B1 - 클라이언트의 요구를 반영한 방송 스케쥴링 방법 - Google Patents
클라이언트의 요구를 반영한 방송 스케쥴링 방법 Download PDFInfo
- Publication number
- KR100701003B1 KR100701003B1 KR1020050036182A KR20050036182A KR100701003B1 KR 100701003 B1 KR100701003 B1 KR 100701003B1 KR 1020050036182 A KR1020050036182 A KR 1020050036182A KR 20050036182 A KR20050036182 A KR 20050036182A KR 100701003 B1 KR100701003 B1 KR 100701003B1
- Authority
- KR
- South Korea
- Prior art keywords
- hot
- request
- determining
- carousel
- broadcast
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B44—DECORATIVE ARTS
- B44C—PRODUCING DECORATIVE EFFECTS; MOSAICS; TARSIA WORK; PAPERHANGING
- B44C1/00—Processes, not specifically provided for elsewhere, for producing decorative surface effects
- B44C1/16—Processes, not specifically provided for elsewhere, for producing decorative surface effects for applying transfer pictures or the like
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41M—PRINTING, DUPLICATING, MARKING, OR COPYING PROCESSES; COLOUR PRINTING
- B41M5/00—Duplicating or marking methods; Sheet materials for use therein
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
1. 청구범위에 기재된 발명이 속한 기술분야
본 발명은 디지털 데이터 방송에서 클라이언트의 요구를 반영한 방송 스케쥴링 방법에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은 클라이언트로부터 도착하는 리퀘스트를 지속적으로 측정하여, 리퀘스트가 상대적으로 많은 오브젝트를 방송 프로그램에 자주 편성함으로써, 클라이언트의 대기 시간을 줄일 수 있는 방송 스케쥴링 방법을 제공하는데 그 목적이 있음.
3. 발명의 해결방법의 요지
본 발명은, 클라이언트의 요구를 반영한 캐러셀 기반의 방송 스케쥴링 방법으로서, 클라이언트로부터 수신되어 저장된 리퀘스트를 토대로 리퀘스트 비에 대한 역치값을 결정하는 역치값 결정단계; 결정된 역치값보다 큰 리퀘스트 비를 갖는 오브젝트(핫 오브젝트)를 분류하는 핫 오브젝트 분류단계; 분류된 각 핫 오브젝트에 대한 방송 횟수를 결정하는 방송 횟수 결정단계: 결정된 방송 횟수만큼 핫 오브젝트를 배치하기 위한 간격을 결정하는 간격 결정단계; 및 결정된 간격에 따라 핫 오브젝트를 캐러셀의 슬롯에 배치하고 방송하는 방송단계를 포함함.
4. 발명의 중요한 용도
본 발명은 DMB(Digital Multimedia Broadcasting) 등에 이용됨.
데이터 방송, 캐러셀(carousel), 스케쥴링, DMB, 리퀘스트, 오브젝트
Description
도 1은 본 발명이 적용되는 방송 시스템에 대한 예시도,
도 2는 본 발명에 따른 방송 스케쥴링 방법을 설명하는 일실시예 흐름도,
도 3은 본 발명에 따른 방송 스케쥴링 방법을 설명하는 다른 일실시예 흐름도,
도 4는 도 3의 캐러셀에 포함될 수 있는 콜드 오브젝트를 결정하는 방법을 설명하는 상세한 흐름도,
도 5는 핫 오브젝트와 콜드 오브젝트의 캐러셀 내에서의 배치 순서를 나타낸 일실시예 도면,
도 6은 오브젝트의 크기를 고려하여 핫 오브젝트와 콜드 오브젝트를 캐러셀에 배치한 일실시예 도면,
도 7a은 지프 분포의 스큐 계수의 변화에 따른 응답시간 결과를 나타낸 일실시예 그래프,
도 7b는 지프 분포의 스큐 계수의 변화에 따른 응답성공율 결과를 나타낸 일실시예 그래프,
도 8a는 λ의 변화에 따른 응답시간 결과를 나타낸 일실시예 그래프,
도 8b는 λ의 변화에 따른 응답성공율 결과를 나타낸 일실시예 그래프이다.
본 발명은 클라이언트의 요구를 반영한 방송 스케쥴링 방법에 관한 것으로, 더욱 상세하게는 캐로셀로 방송되는 디지털 데이터 방송에서 방송 스케쥴을 클라이언트의 요구를 반영하여 구성함으로써 사용자의 대기시간을 감소시키고 원하는 데이터의 방송 성공율을 높일 수 있는 방송 스케쥴링 방법에 관한 것이다.
단방향 디지털 방송 서비스는 서버가 일방적으로 정한 데이터를 일정한 규칙에 의해 클라이언트에게 방송하고, 양방향 디지털 방송 서비스는 서버가 클라이언트의 요구를 반영하여 다수의 클라이언트를 만족시킬 수 있는 데이터를 선택하여 방송한다. 이 때, 양방향 디지털 방송 서비스에서 클라이언트의 요구를 어떻게 반영하여 어떤 데이터 오브젝트(object)를 어느 시점에서 방송해야 다수의 클라이언트를 만족시킬 수 있는가가 중요하다. 즉, 클라이언트의 요구에 따른 데이터 오브젝트의 스케쥴링(scheduling)이 매우 중요하다.
디지털 방송 서비스에서 오브젝트를 스케쥴링하는 방법은 크게 두가지로 나눌 수 있다. 첫번째는 정해진 오브젝트를 일정한 순서로 주기적으로 방송하는 주기적 방송(periodic broadcast) 스케쥴링이고, 두번째는 클라이언트의 요구에 따라 알맞는 오브젝트를 방송하는 주문형(on-demand) 방송 스케쥴링이다. 주기적 방송 스케쥴링은 단방향 디지털 방송 서비스 및 양방향 디지털 방송 서비스에 적용될 수 있고, 주문형 방송 스케쥴링은 양방향 디지털 방송 서비스에 적용될 수 있다. 이 때, 주문형 방송 스케쥴링은 클라이언트의 리퀘스트의 대기 시간이나 클라이언트가 원하는 데이터 오브젝트의 데드라인, 리퀘스트 수 등을 반영한다.
그러나, 주기적 방송 스케쥴링은 서버가 일정한 스케쥴로 오브젝트를 방송하여 클라이언트의 리퀘스트는 고려하지 않는 문제점이 있고, 주문형 방송 스케쥴링은 스케쥴은 바꿀 수 있으나 클라이언트의 리퀘스트가 많아질 경우 대기시간이 길어지거나 방송이 전혀 되지 않는 오브젝트가 생길 수 있는 문제점이 있다.
본 발명은 캐러셀 기반의 주문형 방송에서의 스케쥴링을 제안한 것으로, 클라이언트로부터 도착하는 리퀘스트를 지속적으로 측정하여, 리퀘스트가 상대적으로 많은 오브젝트를 방송 프로그램에 자주 편성함으로써, 클라이언트의 대기 시간을 줄일 수 있는 방송 스케쥴링 방법을 제공하는데 그 목적이 있다.
또한, 본 발명은, 리퀘스트가 상대적으로 많은 오브젝트 뿐만 아니라 리퀘스트가 상대적으로 적은 오브젝트도 방송 프로그램으로 편성함으로써, 다수의 클라이언트를 만족시킬 수 있는 방송 스케쥴링 방법을 제공하는데 또다른 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명의 방법은, 클라이언트의 요구를 반영한 캐러셀 기반의 방송 스케쥴링 방법으로서, 클라이언트로부터 수신되어 저장된 리퀘스트를 토대로 리퀘스트 비에 대한 역치값을 결정하는 역치값 결정단계; 결정된 역치값보다 큰 리퀘스트 비를 갖는 오브젝트(핫 오브젝트)를 분류하는 핫 오브젝트 분류단계; 분류된 각 핫 오브젝트에 대한 방송 횟수를 결정하는 방송 횟수 결정단계: 결정된 방송 횟수만큼 핫 오브젝트를 배치하기 위한 간격을 결정하는 간격 결정단계; 및 결정된 간격에 따라 핫 오브젝트를 캐러셀의 슬롯에 배치하고 방송하는 방송단계를 포함하는 것을 특징으로 한다.
또한, 본 발명의 방법은, 클라이언트의 요구를 반영한 캐러셀 기반의 방송 스케쥴링 방법으로서, 클라이언트로부터 수신되어 저장된 리퀘스트를 토대로 리퀘스트 비에 대한 역치값을 결정하는 역치값 결정단계; 결정된 역치값보다 큰 리퀘스트 비를 갖는 오브젝트(핫 오브젝트)와 상기 결정된 역치값보다 작은 리퀘스트 비를 갖는 오브젝트(콜드 오브젝트)를 분류하는 오브젝트 분류단계; 분류된 각 핫 오브젝트에 대한 방송 횟수를 결정하는 방송 횟수 결정단계: 분류된 콜드 오브젝트에 대한 방송 우선순위를 결정하는 우선순위 결정단계; 상기 결정된 방송 횟수에 기초한 핫 오브젝트의 전체 크기와, 캐러셀의 길이를 고려하여, 캐러셀에 포함될 수 있 는 콜드 오브젝트를 상기 결정된 우선순위에 따라 결정하는 콜드 오브젝트 결정단계; 상기 결정된 방송 횟수만큼 핫 오브젝트를 배치하기 위한 간격을 결정하는 간격 결정단계; 및 결정된 간격에 따라 핫 오브젝트 및 콜드 오브젝트를 캐러셀의 슬롯에 배치하고 방송하는 방송단계를 포함하는 것을 특징으로 한다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.
우선, 본 명세서에서 사용되는 용어를 정의한다.
오브젝트(object)는 데이터 방송을 통해 방송할 이미지, 텍스트 등의 각종 데이터 파일을 나타내고, 리퀘스트(request)는 클라이언트가 특정 오브젝트에 대하여 선호 정보를 서버에게 보내는 것을 나타내며, 캐러셀(carousel)은 일정한 주기마다 방송되는 오브젝트의 집합이며, 본 명세서는 캐러셀을 업데이트 하는 발명이므로 캐러셀의 길이는 다소 변할 수 있으나 최대 길이는 B를 넘지 않도록 한다.
그리고, 클라이언트로부터의 리퀘스트가 서버에 도착한 뒤, 그 리퀘스트가 서버의 큐(queue)에 있는 동안 서버가 오브젝트를 방송하면 그 리퀘스트는 응답에 성공하였다고 정의한다. 또한, 서버가 받은 총 리퀘스트 중 응답에 성공한 리퀘스 트의 비율을 응답 성공율이라고 정의한다. 또한, 각 오브젝트에 대한 리퀘스트가 서버의 큐에 들어온 뒤 그 오브젝트가 방송될 때까지의 경과시간의 평균을 응답 시간이라고 정의한다.
그리고, 서버의 큐에 저장된 리퀘스트 중 특정 오브젝트 i에 대한 리퀘스트의 수를 reqi라고 하고, 서버의 큐에 저장된 총 리퀘스트 수에 대한 특정 오브젝트 i에 대한 리퀘스트 수의 비(reqi/큐에 저장된 총 리퀘스트 수)를 ri라고 하고, 이하 상세한 설명에서 그 비를 리퀘스트 비라고 한다. 또한, 특정 오브젝트 i에 대한 리퀘스트 중 큐에 들어온지 가장 오래된 리퀘스트의 대기시간을 wi라 한다.
그리고, 일정한 역치값(threshold)보다 큰 리퀘스트 비를 갖는 오브젝트를 핫 오브젝트(hot object)라고 정의하고, 그렇지 않은 오브젝트를 콜드 오브젝트(cold object)라고 정의한다.
도 1은 본 발명이 적용되는 방송 시스템에 대한 예시도이다.
도 1에 도시된 바와 같이, 본 발명이 적용되는 방송 시스템은 클라이언트(102)로부터 서버(101)로의 백 채널(back channel)이 있고, 클라이언트(102)는 이동통신망으로 리퀘스트(103)를 전송하고 서버(101)는 클라이언트(102)로부터 도착한 리퀘스트(103)를 자신의 큐에 저장하였다가 그것을 반영하여 방송 프로그램을 구성하여 클라이언트(102)에게 방송한다.
도 2는 본 발명에 따른 방송 스케쥴링 방법을 설명하는 일실시예 흐름도이다.
도 2에 도시된 바와 같이, 먼저, 서버는 큐에 저장된 리퀘스트를 토대로 리퀘스트 비(ri)에 대한 역치값을 결정한다(201). 본 실시예에서는 다음 [수학식 1]과 같이 역치값을 결정한다. 그러나 이에 한정되지 않고 서버의 방송 정책에 따라 변화를 줄 수 있음은 자명하다.
이어서, 도 2에 도시된 바와 같이, 서버는 결정된 역치값보다 큰 리퀘스트 비를 갖는 핫 오브젝트를 분류한다(202). 예를 들면, 다음 [수학식 2]와 같이 상기 결정된 역치값보다 큰 리퀘스트 비를 갖는 핫 오브젝트를 분류한다.
이어서, 도 2에 도시된 바와 같이, 서버는 분류된 각 핫 오브젝트에 대한 방송 횟수를 결정한다(203). 예를 들면, 다음 [수학식 3]의 (1)과 같이 fi '를 계산한 후, [수학식 3]의 (2)와 같이 최종 방송 횟수 fi를 계산한다.
여기서, si는 오브젝트 i의 크기, U는 주어진 fi의 상한값, round(fi ')는 fi '를 소수점 아래에서 반올림하여 얻은 정수값이다.
리퀘스트 비(ri)가 커서 그 오브젝트를 캐러셀 안에서 자주 방송하면 응답 시간을 줄일 수 있다. 그러나, 리퀘스트 비(ri)가 크다고 그 오브젝트를 자주 캐러셀에 포함시킨다고 하더라도 응답시간의 감소는 크게 일어나지 않는 반면, 다른 오브젝트의 방송 기회는 줄어들기 때문에 전체적인 응답성공율은 낮아지므로 효율성은 떨어진다. 따라서, 상기 U와 같이 fi의 상한값을 부여함으로써 응답성공율을 높인다.
다음으로, 도 2에 도시된 바와 같이, 서버는 상기 결정된 방송 횟수에 따라 각 핫 오브젝트를 캐러셀 내의 순서 슬롯에 배치하기 위한 간격을 결정한다(204).
예들 들면, 우선, 핫 오브젝트의 중복을 허용하여 방송할 오브젝트의 총 개수(M)를 측정한다(예를 들어, 핫 오브젝트 1의 방송 횟수가 3이라면 방송할 오브젝트는 3개이다). 그리고, 방송 횟수만큼 오브젝트를 슬롯에 배치하기 위한 간격을 각 핫 오브젝트에 대해 구한다. 즉, 방송할 오브젝트의 총 개수(M)를 핫 오브젝트 의 방송 횟수(fi)로 나누고 소수점 아래에서 반올림하여 얻은 정수값이 핫 오브젝트 i의 배치 간격이다.
마지막으로, 도 2에 도시된 바와 같이, 서버는 결정된 간격에 따라 핫 오브젝트를 캐러셀에 배치하고 방송한다(205). 이 때, 배치는 리퀘스트 비가 가장 큰 핫 오브젝트부터 실시하고, 만약 핫 오브젝트 i를 배치할 때 그 슬롯에 이미 다른 핫 오브젝트가 있다면 다음 슬롯으로 이동하여 배치한다.
도 3은 본 발명에 따른 방송 스케쥴링 방법을 설명하는 다른 일실시예 흐름도이다.
도 3에 도시된 바와 같이, 먼저, 서버는 큐에 저장된 리퀘스트를 토대로 리퀘스트 비(ri)에 대한 역치값을 결정한다(301). 본 실시예에서는 다음 [수학식 4]와 같이 역치값을 결정한다. 그러나 이에 한정되지 않고 서버의 방송 정책에 따라 변화를 줄 수 있음은 자명하다.
이어서, 도 3에 도시된 바와 같이, 서버는 결정된 역치값보다 큰 리퀘스트 비를 갖는 핫 오브젝트와 그렇지 않은 콜드 오브젝트를 분류한다(302). 예를 들면, 다음 [수학식 5]와 같이 상기 결정된 역치값보다 큰 리퀘스트 비를 갖는 핫 오브젝트와 그렇지 않은 콜드 오브젝트를 분류한다.
이어서, 도 3에 도시된 바와 같이, 서버는 분류된 각 핫 오브젝트에 대한 방송 횟수를 결정한다(303). 즉, 다음 [수학식 6]의 (1)과 같이 fi '를 계산한 후, [수학식 6]의 (2)와 같이 최종 방송 횟수 fi를 계산한다.
여기서, si는 오브젝트 i의 크기, U는 주어진 fi의 상한값, round(fi ')는 fi '를 소수점 아래에서 반올림하여 얻은 정수값이다.
한편, 도 3에 도시된 바와 같이, 서버는 분류된 콜드 오브젝트에 대한 방송 우선순위(priority)를 결정한다(304). 예를 들면, 다음 [수학식 7]과 같이 콜드 오브젝트 i에 대한 방송 우선순위를 결정한다.
여기서, Ri, Wi, Si는 ri, wi, si를 각각의 전체 오브젝트의 평균으로 나누어 표준화시킨(normalized) 값이다.
이후, 도 3에 도시된 바와 같이, 서버는 방송 횟수에 기초한 핫 오브젝트의 전체 크기와 캐러셀의 길이를 고려하여 캐러셀에 포함될 수 있는 콜드 오브젝트를 우선순위에 따라 결정한다(305).
즉, 도 4에 도시된 바와 같이, 먼저, 방송 회수만큼의 중복성을 허용하여 핫 오브젝트의 전체 크기를 계산하고(401), 계산된 핫 오브젝트의 전체 크기에 우선순위가 높은 콜드 오브젝트부터 그 크기를 차례로 누적하며 더하여 캐러셀의 길이와 비교한다(402). 이후, 캐러셀의 길이보다 커지는 시점의 콜드 오브젝트는 제외하고 그 전의 콜드 오브젝트들은 캐러셀에 포함시킨다(403).
다음으로, 도 3에 도시된 바와 같이, 서버는 상기 결정된 방송 횟수에 따라 각 핫 오브젝트를 캐러셀 내의 순서 슬롯에 배치하기 위한 간격을 결정한다(306).
예들 들면, 우선, 핫 오브젝트의 중복을 허용하여 방송할 오브젝트의 총 개수(M)를 측정한다(예를 들어, 핫 오브젝트 1의 방송 횟수가 3이라면 방송할 오브젝트는 3개이다). 그리고, 방송 횟수만큼 오브젝트를 슬롯에 배치하기 위한 간격을 각 핫 오브젝트에 대해 구한다. 즉, 방송할 오브젝트의 총 개수(M)를 핫 오브젝트 의 방송 횟수(fi)로 나누고 소수점 아래에서 반올림하여 얻은 정수값이 핫 오브젝트 i의 배치 간격이다.
마지막으로, 도 3에 도시된 바와 같이, 서버는 결정된 간격에 따라 핫 오브젝트와 콜드 오브젝트를 캐러셀에 배치하고 방송한다(307). 이 때, 배치는 리퀘스트 비가 가장 큰 핫 오브젝트부터 실시하고, 만약 핫 오브젝트 i를 배치할 때 그 슬롯에 이미 다른 핫 오브젝트가 있다면 다음 슬롯으로 이동하여 배치한다. 최종적으로 핫 오브젝트의 배치가 끝나면 빈 슬롯에 콜드 오브젝트를 배치한다.
도 3의 방송 스케쥴링 방법은 도 2의 방송 스케쥴링 방법보다 핫 오브젝트에 대한 방송 횟수가 다소 감소하기 때문에 응답시간이 조금 길어질 수 있으나, 콜드 오브젝트의 방송으로 인하여 다수 클라이언트의 만족도를 높이는 결과를 얻을 수 있다.
이하, 구체적인 예를 들어 콜드 오브젝트를 포함한 스케쥴링 방법을 설명한다.
먼저, 오브젝트 집합이 {1, 2, 3, 4, 5}이고, 각 오브젝트의 크기는 s1=2, s2=3, s3=1, s4=2, s5=1 이라고 가정한다. 이 때, 크기(si) 단위는 tu(timeunit)이고 1초가 5 tu이다.
또한, 캐러셀의 주기 B는 16tu으로 가정하고, 방송 횟수의 상한값 U는 3으로 가정한다. 그리고, 본 예에서 핫 오브젝트와 콜드 오브젝트의 분류는 임의로 가정하여, 상기 [수학식 4]로 계산된 역치값에 따라 상기 [수학식 5]와 같이 분류된 핫 오브젝트 집합이 {2, 3}이고, 분류된 핫 오브젝트 집합 중 리퀘스트 비가 가장 큰 오브젝트는 2이라고 가정한다. 따라서, 콜드 오브젝트 집합은 {1, 4, 5}이다.
또한. 핫 오브젝트에 대한 방송 횟수는 상기 [수학식 6]에 의해 계산되어, 핫 오브젝트 2에 대한 방송 횟수(f1)는 3, 핫 오브젝트 3에 대한 방송 횟수(f2)는 3으로 가정한다.
또한, 콜드 오브젝트의 우선순위는 상기 [수학식 7]에 의해 구하고 구해진 우선순위에 따라 콜드 오브젝트를 나열하면 1, 4, 5 순서라고 가정한다.
상기 가정을 기초로, 스케쥴링 방법을 적용하면, 먼저 캐러셀에 포함될 수 있는 콜드 오브젝트가 있는지를 판단한다. 즉, 방송 횟수를 고려한 핫 오브젝트의 전체 크기는 2×3+3×3=15 이고 캐러셀의 길이는 16이기 때문에, 콜드 오브젝트 중에서 오브젝트 1만이 캐러셀에 포함될 수 있다. 따라서, 캐러셀에 포함될 수 있는 콜드 오브젝트 1을 포함하여 캐러셀에 포함되는 오브젝트를 중복 허용하여 나열하면 {2, 2, 2, 3, 3, 1}이 된다.
다음으로, 핫 오브젝트를 캐러셀 내에 배치하기 위한 간격을 구한다. 즉, 캐러셀에 포함되는 오브젝트의 총 개수(M)는 7이고, 따라서 핫 오브젝트 2가 캐러셀 에 배치되는 서로 간의 간격은 2(M/f1의 소수점을 반올림한 정수값)가 되고, 핫 오브젝트 3이 캐러셀에 배치되는 서로 간의 간격은 2(M/f2의 소수점을 반올림한 정수값)가 된다.
이어서, 핫 오브젝트와 결정된 콜드 오브젝트를 캐러셀에 배치한다. 먼저, 핫 오브젝트를 배치하되, 리퀘스트 비가 큰 핫 오브젝트 2부터 배치한다. 즉, 간격을 2로 하여 방송 회수 3만큼 핫 오브젝트 2를 캐러셀에 배치한다. 다음으로, 핫 오브젝트 3을 배치한다. 즉, 간격을 2로 하여 방송 횟수 3만큼 핫 오브젝트 3을 캐러셀에 배치한다. 마지막으로 핫 오브젝트를 캐러셀에 배치하고 난 뒤 남은 슬롯에 콜드 오브젝트 1을 배치한다.
도 5는 핫 오브젝트와 콜드 오브젝트의 캐러셀 내에서의 배치 순서를 나타낸 일실시예 도면으로, 상술한 과정에 따라 핫 오브젝트 2, 3과 콜드 오브젝트 1이 캐러셀 내에 배치되는 순서이다.
또한, 도 6은 오브젝트의 크기를 고려하여 핫 오브젝트와 콜드 오브젝트를 캐러셀에 배치한 일실시예 도면으로, 도 5의 배치를 오브젝트의 크기를 고려하여 상세히 나타낸 결과이다.
상술한 과정에서, 서버는 오브젝트 하나를 방송할 때마다 상기 과정을 새롭게 수행하며, 응답성공율과 응답시간도 매 오브젝트마다 계산된다. 또한, 오브젝트 i에 대한 리퀘스트 수 reqi는 EWMA(Exponentially Weighted Moving Average)로 다음 과 [수학식 8]과 같이 구한다. 방송 오브젝트 편성은 매 캐러셀마다 반영이 된다.
여기서, req_l, new는 하나의 오브젝트를 서비스한 뒤에 측정한 오브젝트 i에 대한 리퀘스트 수이다.
이하, 본 발명에 따른 스케쥴링 방법(이하, FBS:Frequency based Broadcast Scheduling)과 IEEE/ACM Trans. on Networking, vol. 7, No.6, pp.846-860, Dec, 1999에 개시된 Demet Aksoy, Michael Franklin의 "R×W:A Scheduling Approach for Large-Scale On-Demand Data Broadcast"(이하, R×W라 한다)의 성능을 비교한다.
우선, 성능 평가를 위해 클라이언트의 리퀘스트가 속도 λ의 포아송(Poisson) 분포로 서버의 큐에 들어오고, 각 오브젝트의 선호도는 Zipf 분포를 따른다고 가정한다. 그리고, 지프(Zipf) 분포의 스큐 계수(skew coefficient)의 변화에 따른 응답시간과 응답성공율을 측정하고, λ의 변화에 따른 응답시간과 응답성공율을 측정한다.
도 7a은 지프 분포의 스큐 계수의 변화에 따른 응답시간 결과를 나타낸 일실시예 그래프로서, λ는 0.6 이고 지프 분포의 스큐 계수가 변할 때, 본 발명에 따른 스케쥴링 방법(FBS)과 R×W의 응답시간 결과를 비교한 일실시예 그래프이다. 이 때, λ가 0.6이라는 것은 tu(timeunit)당 0.6의 리퀘스트가 서버에 들어온다는 것을 의미한다. 즉, 1초에 3개의 리퀘스트가 서버에 들어온다.
도 7a에 도시된 바와 같이, 본 발명에 따른 스케쥴링 방법(FBS)이 R×W 보다 더 짧은 응답시간을 보인다.
도 7b는 지프 분포의 스큐 계수의 변화에 따른 응답성공율 결과를 나타낸 일실시예 그래프로서, λ는 0.6 이고 지프 분포의 스큐 계수가 변할 때, 본 발명에 따른 스케쥴링 방법(FBS)과 R×W의 응답성공율 결과를 비교한 일실시예 그래프이다.
도 7b에 도시된 바와 같이, 본 발명에 따른 스케쥴링 방법(FBS)이 R×W 보다 더 높은 응답성공율을 나타낸다.
도 8a는 λ의 변화에 따른 응답시간 결과를 나타낸 일실시예 그래프로서, 스큐 계수는 0.5 이고 λ가 변할 때, 본 발명에 따른 스케쥴링 방법(FBS)과 R×W의 응답시간 결과를 비교한 일실시예 그래프이다.
도 8a에 도시된 바와 같이, λ가 0.2 이하일 때에는 R×W가 본 발명에 따른 스케쥴링 방법(FBS) 보다 더 짧은 응답시간을 나타낸다. 그러나, 이것은 리퀘스트 수가 작을 때 당연히 얻을 수 있는 주문형(On-Demand) 방법의 장점으로서, λ가 0.2를 넘어서면서부터는 약 15tu(timeunit) 정도의 응답시간 차이를 나타내며 본 발명에 따른 스케쥴링 방법(FBS)의 성능이 보다 더 우수하다.
도 8b는 λ의 변화에 따른 응답성공율 결과를 나타낸 일실시예 그래프로서, 스큐 계수는 0.5 이고 λ가 변할 때, 본 발명에 따른 스케쥴링 방법(FBS)과 R×W의 응답성공율 결과를 비교한 일실시예 그래프이다.
도 8b에 도시된 바와 같이, 본 발명에 따른 스케쥴링 방법(FBS)이 R×W 보다 더 우수한 응답성공율 결과를 나타낸다. 즉, 본 발명에 따른 스케쥴링 방법은 도 8b에 도시된 바와 같이 80% 이상의 일정한 응답성공율을 나타낸다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
상기와 같은 본 발명은, 특정한 방송 주기를 갖고 필요한 오브젝트를 선택하여 프로그램을 구성하여 방송함으로써, 다수의 클라이언트를 만족시키며 클라이언 트가 기다리는 시간을 줄일 수 있는 효과가 있다.
또한, 본 발명은, 클라이언트가 원하는 오브젝트가 다름에도 불구하고 선호도가 높은 오브젝트와 낮은 오브젝트를 일률적인 형태로 방송함으로 인해 야기되는 불필요한 채널낭비를 막을 수 있고, 또한 캐러셀 기반이 아닌 주문형(on-demand) 시스템에서처럼 리퀘스트가 많아지면 클라이언트가 기다리는 시간이 길어지고 우선순위(priority)가 높은 특정 오브젝트만 연속적으로 중복 방송되어 다른 오브젝트의 방송 기회를 저해하는 경우를 막을 수 있는 효과가 있다.
Claims (10)
- 클라이언트의 요구를 반영한 캐러셀 기반의 방송 스케쥴링 방법으로서,클라이언트로부터 수신되어 저장된 리퀘스트를 토대로 리퀘스트 비에 대한 역치값을 결정하는 역치값 결정단계;결정된 역치값보다 큰 리퀘스트 비를 갖는 오브젝트(핫 오브젝트)를 분류하는 핫 오브젝트 분류단계;분류된 각 핫 오브젝트에 대한 방송 횟수를 결정하는 방송 횟수 결정단계:결정된 방송 횟수만큼 핫 오브젝트를 배치하기 위한 간격을 결정하는 간격 결정단계; 및결정된 간격에 따라 핫 오브젝트를 캐러셀의 슬롯에 배치하고 방송하는 방송단계를 포함하는 방송 스케쥴링 방법.
- 제 1 항에 있어서,상기 방송단계는,리퀘스트 비가 가장 큰 핫 오브젝트부터 상기 결정된 간격에 따라 캐러셀의 슬롯에 배치하되, 배치할 슬롯에 이미 다른 핫 오브젝트가 있는 경우에는 다음 슬롯에 배치하는 것을 특징으로 하는 방송 스케쥴링 방법.
- 클라이언트의 요구를 반영한 캐러셀 기반의 방송 스케쥴링 방법으로서,클라이언트로부터 수신되어 저장된 리퀘스트를 토대로 리퀘스트 비에 대한 역치값을 결정하는 역치값 결정단계;결정된 역치값보다 큰 리퀘스트 비를 갖는 오브젝트(핫 오브젝트)와 상기 결정된 역치값보다 작은 리퀘스트 비를 갖는 오브젝트(콜드 오브젝트)를 분류하는 오브젝트 분류단계;분류된 각 핫 오브젝트에 대한 방송 횟수를 결정하는 방송 횟수 결정단계:분류된 콜드 오브젝트에 대한 방송 우선순위를 결정하는 우선순위 결정단계;상기 결정된 방송 횟수에 기초한 핫 오브젝트의 전체 크기와, 캐러셀의 길이를 고려하여, 캐러셀에 포함될 수 있는 콜드 오브젝트를 상기 결정된 우선순위에 따라 결정하는 콜드 오브젝트 결정단계;상기 결정된 방송 횟수만큼 핫 오브젝트를 배치하기 위한 간격을 결정하는 간격 결정단계; 및결정된 간격에 따라 핫 오브젝트 및 콜드 오브젝트를 캐러셀의 슬롯에 배치하고 방송하는 방송단계를 포함하는 방송 스케쥴링 방법.
- 제 1 항 또는 제 4 항에 있어서,상기 역치값은,리퀘스트 비의 전체 평균인 것을 특징으로 하는 방송 스케쥴링 방법.
- 제 4 항에 있어서,상기 우선순위 결정단계는,분류된 콜드 오브젝트에 대한 방송 우선순위를 하기 [수학식]을 이용하여 결정하는 것을 특징으로 하는 방송 스케쥴링 방법.[수학식]우선순위 = RiWi/Si여기서, Ri, Wi, Si는 ri, wi, si를 각각의 전체 평균으로 나누어 표준화시킨(normalized) 값으로서, ri는 오브젝트 i에 대한 리퀘스트 비, wi는 오브젝트 i에 대한 리퀘스트 중 큐에 들어온지 가장 오래된 리퀘스트의 대기시간, si는 오브젝트 i의 크기.
- 제 4 항에 있어서,상기 콜드 오브젝트 결정단계는,상기 결정된 방송 횟수만큼의 중복성을 허용하여 핫 오브젝트의 전체 크기를 계산하는 단계; 및계산된 핫 오브젝트의 전체 크기에 우선순위가 높은 콜드 오브젝트부터 그 크기를 차례로 누적하며 더하여 캐러셀의 길이와 비교하되, 캐러셀의 길이보다 커지는 시점의 콜드 오브젝트는 제외하고 그 전의 콜드 오브젝트들은 캐러셀에 포함시키는 단계를 포함하는 방송 스케쥴링 방법.
- 제 1 항 또는 제 4 항에 있어서,상기 간격 결정단계는,결정된 방송 횟수만큼 핫 오브젝트를 배치하기 위한 간격을 하기 [수학식]을 이용하여 결정하는 것을 특징으로 하는 방송 스케쥴링 방법.[수학식]간격 = M/fi,여기서, M은 핫 오브젝트의 중복을 허용하여 방송할 오브젝트의 총 개수, fi는 오브젝트 i의 방송 횟수.
- 제 4 항에 있어서,상기 방송단계는,리퀘스트 비가 가장 큰 핫 오브젝트부터 상기 결정된 간격에 따라 캐러셀의 슬롯에 배치하되, 배치할 슬롯에 이미 다른 핫 오브젝트가 존재하는 경우에는 다음 슬롯에 배치하는 핫 오브젝트 배치단계; 및핫 오브젝트 배치가 완료되면 빈 슬롯에 상기 캐러셀에 포함될 수 있는 콜드 오브젝트를 배치하는 콜드 오브젝트 배치단계를 포함하는 방송 스케쥴링 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050036182A KR100701003B1 (ko) | 2005-04-29 | 2005-04-29 | 클라이언트의 요구를 반영한 방송 스케쥴링 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050036182A KR100701003B1 (ko) | 2005-04-29 | 2005-04-29 | 클라이언트의 요구를 반영한 방송 스케쥴링 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060114178A KR20060114178A (ko) | 2006-11-06 |
KR100701003B1 true KR100701003B1 (ko) | 2007-03-29 |
Family
ID=37651986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050036182A KR100701003B1 (ko) | 2005-04-29 | 2005-04-29 | 클라이언트의 요구를 반영한 방송 스케쥴링 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100701003B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008105568A1 (en) * | 2007-02-28 | 2008-09-04 | University Of Seoul Foundation Of Industry Academic Cooperation | Scheduling method of digital broadcasting service |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010034740A (ko) * | 1998-04-03 | 2001-04-25 | 마크 홀린저 | 텔레비전 전달 시스템을 사용한 표적 광고 |
KR20030092105A (ko) * | 2001-04-24 | 2003-12-03 | 프레디웨이브 코포레이션 | 프리페치 데이터 전송을 사용하는 주문형 데이터 디지털방송 시스템 |
KR20040007697A (ko) * | 2001-06-11 | 2004-01-24 | 까날+ 테크날러지 (쏘시에떼 아노님) | 프로그램 전송 분야의 개선 |
KR20040084932A (ko) * | 2002-02-21 | 2004-10-06 | 후지쯔 가부시끼가이샤 | 프로그램 가이드에 따른 인터넷 컨텐트 획득을 위한 방법및 시스템 |
-
2005
- 2005-04-29 KR KR1020050036182A patent/KR100701003B1/ko not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010034740A (ko) * | 1998-04-03 | 2001-04-25 | 마크 홀린저 | 텔레비전 전달 시스템을 사용한 표적 광고 |
KR20030092105A (ko) * | 2001-04-24 | 2003-12-03 | 프레디웨이브 코포레이션 | 프리페치 데이터 전송을 사용하는 주문형 데이터 디지털방송 시스템 |
KR20040007697A (ko) * | 2001-06-11 | 2004-01-24 | 까날+ 테크날러지 (쏘시에떼 아노님) | 프로그램 전송 분야의 개선 |
KR20040084932A (ko) * | 2002-02-21 | 2004-10-06 | 후지쯔 가부시끼가이샤 | 프로그램 가이드에 따른 인터넷 컨텐트 획득을 위한 방법및 시스템 |
Non-Patent Citations (5)
Title |
---|
1019960706748 |
1020010034740 |
1020030092105 |
1020040007697 |
1020040084932 |
Also Published As
Publication number | Publication date |
---|---|
KR20060114178A (ko) | 2006-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sen et al. | Optimal patching schemes for efficient multimedia streaming | |
KR101360690B1 (ko) | 컨텐트 통신을 위한 시스템 및 방법 | |
Kenyon et al. | The data broadcast problem with non-uniform transmission times | |
Shachnai et al. | Exploring wait tolerance in effective batching for video-on-demand scheduling | |
WO2012050913A1 (en) | Predictive network system and method | |
Kim et al. | An analytical framework to characterize the efficiency and delay in a mobile data offloading system | |
Hou et al. | Queueing systems with hard delay constraints: a framework for real-time communication over unreliable wireless channels | |
KR100701003B1 (ko) | 클라이언트의 요구를 반영한 방송 스케쥴링 방법 | |
CN103036806B (zh) | 一种基于动态索引的按需数据广播调度方法 | |
CN107171974A (zh) | 一种广告机共享资源的方法及装置 | |
CN102332005A (zh) | 动态自适应垃圾清理方法及系统 | |
Sarhan et al. | A new class of scheduling policies for providing time of service guarantees in Video-On-Demand servers | |
CN106937392B (zh) | 一种基于dash业务中用户体验质量的无线资源调度方法 | |
CN113259439B (zh) | 基于接收端驱动的键值调度方法 | |
WO2008105568A1 (en) | Scheduling method of digital broadcasting service | |
Waluyo et al. | Incorporating global index with data placement scheme for multi channels mobile broadcast environment | |
KR101002623B1 (ko) | 데이터 방송을 위한 방송 아이템 스케줄링 방법 | |
Kang | Wireless data broadcast scheduling with utility metric based on soft deadline | |
Xu et al. | On scheduling time-critical on-demand broadcast | |
Carlsson et al. | Multicast protocols for scalable on-demand download | |
Narvekar et al. | Comparison of broadcast scheduling techniques in mobile computing environment | |
Sarhan et al. | Provision of Time of Service Guarantees in Video-on-demand Servers | |
Večeřa et al. | The finding of the queuing theory models for evaluation throughput of the IRS radio network in the Czech Republic | |
Choi et al. | A Hybrid Broadcast Scheduling for Mobile Data Broadcasting with Return Channels | |
Kang et al. | Combining push and pull scheduling for mobile data broadcasting in convergence networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |