KR20100015147A - 멀티미디어 서비스를 제공하기 위한 스케쥴링 방법 - Google Patents
멀티미디어 서비스를 제공하기 위한 스케쥴링 방법 Download PDFInfo
- Publication number
- KR20100015147A KR20100015147A KR20080076072A KR20080076072A KR20100015147A KR 20100015147 A KR20100015147 A KR 20100015147A KR 20080076072 A KR20080076072 A KR 20080076072A KR 20080076072 A KR20080076072 A KR 20080076072A KR 20100015147 A KR20100015147 A KR 20100015147A
- Authority
- KR
- South Korea
- Prior art keywords
- target packets
- packets
- target
- scheduling
- priority
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000003111 delayed effect Effects 0.000 claims description 14
- 230000005540 biological transmission Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 102100037812 Medium-wave-sensitive opsin 1 Human genes 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/56—Queue scheduling implementing delay-aware scheduling
- H04L47/564—Attaching a deadline to packets, e.g. earliest due date first
- H04L47/566—Deadline varies as a function of time spent in the queue
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/62—Establishing a time schedule for servicing the requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26208—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
- H04N21/26233—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving content or additional data duration or size, e.g. length of a movie, size of an executable file
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/2625—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for delaying content or additional data distribution, e.g. because of an extended sport event
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
스케쥴링 방법이 제공된다. 상기 스케쥴링 방법은 대상 패킷들이 재생될 때까지 남아 있는 지체(delayed) 시간을 고려하여 상기 대상 패킷들에 대하여 전송되는 순서와 관련된 우선권을 부여하는 단계, 상기 대상 패킷들에 대하여 디코딩 과정에서 영향력과 관련된 중요도를 인지하는 단계 및 상기 대상 패킷들에 상기 우선권이 부여되었는지 여부 및 상기 인지된 중요도 기초로 상기 대상 패킷들을 스케쥴링하는 단계를 포함한다. 상기 스케쥴링 방법은 지체 시간 및 중요도를 모두 고려하여 스케쥴링을 수행함으로써, 효율적으로 멀티미디어 서비스를 비롯한 데이터 통신 서버를 제공할 수 있다.
스케쥴링, 중요도, 지체 시간, 지연 시간, 패킷, MPEG, 프레임, 멀티미디어
Description
본 발명은 효율적이고 높은 품질로 멀티미디어 서비스를 제공하기 위한 기술에 관한 것이다.
큐(대기열)에 들어오는 각각의 패킷에 대하여 아래와 같은 방법으로 시작 태그와 종료 태그가 계산된다. 플로 i의 n번째 패킷이 A(t i ,n) 시간에 큐에 도달하는 경우, 시작 태그(si ,n)와 종료 태그(fi ,n)는 각각 식 (1)과 같이 계산된다.
위 식에서 L i ,n 는 플로 i의 n번째 패킷의 크기이다.
각 플로에 대해 시작 태그와 종료 태그의 계산이 끝나고 난 후, 스케줄링 방식들 중 하나인 WFQ(weighted fair queueing)는 종료 태그의 값이 가장 작은 플로의 패킷을 선택한다.
그러나, 무선 네트워크 환경에서는 채널 에러로 인해 스케줄러에 의해 선택이 되더라도 서비스를 받지 못하는 경우가 발생하며, 결국 플로들 사이에서 불균등하게 서비스가 제공되는 결과가 초래된다.
무선 환경에서의 공평한 자원 분배를 위한 스케줄링 기법은 채널 에러로 인해 서비스가 지연된 플로를 지체 플로로 처리하고, 다른 플로의 채널 에러로 인해 사용하지 않는 자원을 할당받아 미리 서비스를 제공받는 플로를 앞섬 플로로 처리한다. 이 후의 스케줄링 과정에서 지체 플로에게 우선적으로 자원을 할당하고, 앞섬 플로는 미리 제공된 서비스에 상응하는 자원을 다른 플로에게 양보한다. 즉, 기존의 스케줄링 알고리즘은 채널 에러로 인해 자원을 할당할 수 없었던 패킷에 대하여, 채널 상태가 좋아진 경우, 자원을 보상함으로써 자원을 공평하게 배분한다. 이때 보상되는 자원은 채널 에러로 인해 전송하지 못했던 패킷의 크기에 따라 결정된다.
일반적으로 멀티미디어 서비스를 위해 사용되는 멀티미디어 스트림은 가변 길이를 갖는 프레임으로 구성된다. 즉, 멀티미디어 스트림에서, 패킷의 크기보다는 재생되는 시간이나 지연 시간이 훨씬 중요한 요소로 작용한다.
상술한 기존의 스케줄링 알고리즘은 재생 시간이 아니라 패킷의 크기를 기초로 자원을 보상하기 때문에 멀티미디어 서비스를 위해서는 부적합할 수 있다.
본 발명은 대상 패킷들의 지체 시간과 중요도에 따라 대상 패킷들에 가중치 또는 우선 순위를 두어 대상 패킷들을 스케쥴링함으로써, 보다 효율적으로 멀티미디어 서비스를 제공한다.
본 발명의 일실시예에 따른 스케쥴링 방법은 대상 패킷들이 재생될 때까지 남아 있는 지체(delayed) 시간을 고려하여 상기 대상 패킷들에 대하여 전송되는 순서와 관련된 우선권을 부여하는 단계, 상기 대상 패킷들에 대하여 디코딩 과정에서 영향력과 관련된 중요도를 인지하는 단계 및 상기 대상 패킷들에 상기 우선권이 부여되었는지 여부 및 상기 인지된 중요도 기초로 상기 대상 패킷들을 스케쥴링하는 단계를 포함한다.
이 때, 상기 대상 패킷들에 대하여 상기 우선권을 부여하는 단계는 상기 대상 패킷들이 멀티미디어 데이터 형식을 갖는 패킷들인지 여부 및 상기 대상 패킷들의 크기를 더 고려하여 상기 우선권을 부여하는 단계일 수 있다.
그리고, 상기 대상 패킷들에 대하여 상기 우선권을 부여하는 단계는 상기 대상 패킷들 중 미리 설정된 최대 허용 시간보다 큰 상기 지체 시간을 갖는 패킷을 추출하고, 상기 추출된 패킷을 상기 대상 패킷들로부터 제외하여 상기 대상 패킷들에 대하여 상기 우선권을 부여하는 단계일 수 있다.
그리고, 상기 대상 패킷들에 대하여 상기 우선권을 부여하는 단계는 상기 대상 패킷들의 지체 시간을 미리 설정된 임계값과 비교하여 상기 우선권을 부여하는 단계일 수 있다.
또한, 상기 중요도를 인지하는 단계는 상기 대상 패킷들 중 적어도 하나에서 오류 또는 손실이 발생하는 경우, 상기 발생된 오류 또는 손실이 상기 대상 패킷들을 재생 또는 실행하는 데에 미치는 영향력을 고려하여 상기 중요도를 인지하는 단계일 수 있다.
그리고, 상기 중요도를 인지하는 단계는 복수의 패킷들에 대한 상기 중요도를 기록한 테이블을 기초로 상기 대상 패킷들에 대한 상기 중요도를 인지하는 단계일 수 있다.
또한, 상기 대상 패킷들 중 적어도 하나의 패킷은 멀티미디어 데이터이고, 상기 멀티미디어 데이터는 MPEG(Moving Picture Experts Group) 데이터로서 I 프레임, P 프레임 및 B 프레임을 포함하고, 상기 대상 패킷들을 스케쥴링하는 단계는 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임의 순서에 따라 가중치를 두어 상기 대상 패킷들을 스케쥴링하는 단계일 수 있다.
또한, 상기 대상 패킷들을 스케쥴링하는 단계는 상기 대상 패킷들에 의해 사용된 채널들의 사용 빈도를 고려하여 상기 대상 패킷들을 스케쥴링하는 단계일 수 있다.
본 발명은 대상 패킷들의 지체 시간과 중요도에 따라 대상 패킷들에 가중치 또는 우선 순위를 두어 대상 패킷들을 스케쥴링함으로써, 보다 효율적으로 멀티미 디어 서비스를 제공할 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 스케쥴링 방법을 나타낸 동작 흐름도이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 스케쥴링 방법은 대상 패킷들이 재생될 때까지 남아 있는 지체(delayed) 시간, 대상 패킷들의 크기 및 데이터 형식을 파악한다(S110).
즉, 멀티미디어 스트림에서 패킷 전송의 지연은 QoS에 직접적인 영향을 미치는 요소이다. 이 때, 본 발명은 기존의 스케줄링 알고리즘과 달리 지연되고 있는 패킷의 크기뿐만 아니라 시간적으로 지체 시간 또는 보상 가능한 시간을 고려하고자 하는 것이다. 다시 말하면, 지체된 패킷을 우선적으로 스케줄링하는 경우, 기준 값으로서 지체된 패킷의 크기뿐만 아니라 지체된 시간(해당 패킷이 재생될 때까지 남아있는 시간)을 고려하는 것이다.
그리고, 데이터는 멀티미디어 데이터의 형식 과 비-멀티미디어 데이터의 형식을 가질 수 있다. 멀티미디어 데이터는 대표적으로 동영상 데이터일 수 있다.
또한, 본 발명의 일실시예에 따른 스케쥴링 방법은 대상 패킷들이 재생될 때까지 남아 있는 지체(delayed) 시간, 대상 패킷들의 크기 및 데이터 형식을 고려하여 상기 대상 패킷들에 대하여 전송되는 순서와 관련된 우선권을 부여한 다(S120).
여기서, 우선권이 부여되었는지 여부는 스케쥴링 순서를 결정함에 있어서 고려되는 하나의 요소로 사용된다.
본 발명의 일실시예에 따른 스케쥴링 방법은 긴급 모드 또는 정상 모드 중 어느 하나로 대상 패킷들에 대하여 우선권을 부여할 수 있다. 어떤 패킷들에 대해서는 긴급 모드가 적용될 수 있고, 다른 패킷들에 대해서는 정상 모드가 적용될 수 있다. 이 때, 다른 모든 조건들이 동일하다면, 긴급 모드가 적용되는 패킷이 정상 모드가 적용되는 패킷보다 우선적으로 전송될 것이다.
예를 들어, 지체 시간이 임계값보다 큰 멀티미디어 데이터는 긴급 모드로 처리되고, 지체 시간이 임계값보다 작은 멀티미디어 데이터와 비(non)-멀티미디어 데이터는 정상 모드로 처리될 수 있다. 여기서, 긴급 모드(urgent mode)는 해당 플로에 할당된 자원만으로는 재생 시간에 맞춰서 패킷 전송이 불가능하다고 판단될 때, 일시적으로 멀티미디어 플로가 즉시 처리될 수 있도록 전송 순위를 결정하는 모드를 말한다. 반면에, 정상모드(normal mode)는 데이터의 종류와 상관없이 동등한 조건에서 시작 태그와 지연된 시간을 고려하여 전송(스케쥴링) 순서를 결정하는 모드이다.
이 때, 각 플로의 서비스 태그를 계산하는 방법은 하기 식 (1)과 같이 나타낼 수 있다.
상기 수학식 1에서, 처음에서 두 항목은 기존의 WFQ에서 종료 태그를 나타내는 값과 같다. S(p i k )는 시작태그로 i 플로의 k번째 패킷이 큐에 도달하는 시간 또는 i 플로의 이전 패킷(k-1)의 전송완료 시간 중에서 큰 값을 취하고, L(p i k )/r i 는 i 플로에 할당된 가중치에 해당되는 대역으로 k번째 패킷을 전송하는 데 걸리는 시간이다. d i 는 멀티미디어 데이터의 경우에는 재생시간 기준으로 i 플로가 지체된 시간을 나타내며, 비-멀티미디어 데이터는 재생 시간이 없으므로 큐에서 머무른 시간으로 정한다. β는 서비스 태그를 계산할 때 지연된 시간의 비중을 나타내는 가중치 값을 나타내며, R(0)는 상수 값이다.
상기 수학식 2는 긴급 모드에서, 멀티미디어 플로의 서비스 태그를 계산하는 방법을 보여준다. d i 값만을 고려한 정상 모드와 달리 긴급 모드에서는 B i k -d i 에 따라 전송(스케쥴링) 순서가 결정될 수 있다. 예를 들어, B i k 는 i 플로에 허용 가능한 최대 허용 시간을 나타내므로, 남아 있는 최대 허용 시간이 작은 플로를 선택할 수 있다.
R(T(p i k ))은 상수 값으로 패킷의 프레임 종류(유형, 중요도)에 따라 전송 순서를 결정하는 데에 사용될 수 있다. 각 프레임 종류(유형)에 따른 상수 값은 R(0) ≫ R(B) ≫ R(P) ≫ R(I) 의 관계를 갖기 때문에 긴급 모드의 플로는 정상 모드의 플로보다 먼저 스케줄링될 수 있다. 이에 대해서는, 아래에서 다시 상세히 설명하겠지만, 본 발명은 우선권 부여 여부(긴급 모드인지 정상 모드인지 여부) 및 데이터 패킷들의 유형들에 따른 중요도를 모두 고려하여 스케쥴링을 수행할 수 있다.
또한, 본 발명의 일실시예에 따른 스케쥴링 방법은 상기 대상 패킷들에 대하여 디코딩 과정에서 영향력과 관련된 중요도를 인지한다(S130).
상술한 바와 같이, 상기 수학식 2에서 R(T(p i k ))가 중요도를 나타내는 팩터로 사용될 수 있다. 이 때, 본 발명의 일실시예에 따른 스케쥴링 방법은 패킷들에 대하여 중요도를 기록한 테이블을 관리 및 유지할 수 있고, 대상 패킷들에 대하여 상기 테이블을 이용하여 중요도를 인지할 수 있다.
중요도는 상기 대상 패킷들 중 적어도 하나에서 오류 또는 손실이 발생하는 경우, 상기 발생된 오류 또는 손실이 상기 대상 패킷들을 재생 또는 실행하는 데에 미치는 영향력과 관련된다. 이에 대해서는 도 2와 관련하여 상세히 설명한다.
또한, 본 발명의 일실시예에 따른 스케쥴링 방법은 대상 패킷들에 의해 사용된 채널들의 사용 빈도를 인지한다(S140).
이 때, 다른 모든 조건들이 동일하다면, 사용 빈도가 적은 채널들을 사용하는 패킷이 우선적으로 전송되는 것으로 스케쥴링될 수 있다.
또한, 본 발명의 일실시예에 따른 스케쥴링 방법은 단계 S120 내지 단계 S140으로부터 획득된 우선권 부여 여부(긴급 모드인지 정상 모드인지 여부), 중요도, 채널들의 사용 빈도를 고려하여 대상 패킷들을 스케쥴링한다(S150).
예를 들어, 본 발명의 일실시예에 따른 스케쥴링 방법은 긴급 모드가 적용되는 패킷들 중, 중요도가 가장 높고, 사용된 채널들의 사용 빈도가 가장 적은 패킷을 가장 우선적으로 전송하는 것으로 스케쥴링할 수 있다.
도 2는 MPEG 데이터에 포함된 I 프레임, P 프레임 및 B 프레임을 개념적으로 나타낸 도면이다.
MPEG-4는 기존의 MPEG-1, MPEG-2에 비해 여러 가지 부가적인 기능을 지원하지만 자연 영상을 무선 채널을 통해 송/수신한다는 점에서, 압축 데이터를 복원하는 알고리즘과 비디오 데이터를 구성하는 방법에 대해서는 MPEG-1이나 MPEG-2와 유사하다.
MPEG은 기본 영상과 기본 영상을 기준으로 프레임들 사이의 차이 영상만을 저장하는 방식을 사용한다. 이 때, 특정 GOP(group of picture)의 기준 영상인 I 프레임이 손실되는 경우, 상기 특정 GOP 내의 모든 프레임들에 그 손실의 영향이 미친다. 여기서 GOP는 I, P, B 프레임의 집합으로 다른 GOP로부터 영향을 받지 않는 독립적인 영상 프레임들의 집합의 단위이다.
P 프레임의 손실은 상기 P 프레임의 앞과 뒤의 B 프레임과 이후 뒤따르는 GOP 내의 모든 P 프레임까지 영향을 미치며, B 프레임의 손실은 다른 프레임에게 영향을 미치지 않는다. 그러므로 MPEG에서 전체 비디오 스트림에 포함된 패킷들은 그 패킷들의 유형들에 따라 패킷들의 우선 순위가 달라진다.
인트라 코딩 기법이 적용되는 I 프레임은 상기 I 프레임 내에 포함된 정보만을 이용하는 다양한 압축 코딩 기법들을 사용한다.
도 2를 참조하면, 도 2는 MPEG의 GOP 구조를 개념적으로 나타내고 있다. 도 2에서 화살표는 각 프레임이 디코딩되는 경우, 참조하는 프레임의 방향을 나타낸다. 대부분 시퀀스 내의 연속적인 프레임 집합은 특정 프레임을 기준으로 볼 때 전후의 프레임과 매우 비슷한 특징을 갖는다. 이러한 특징을 이용하여 시간상으로 주변 영상과의 차이로서 P, B 프레임을 만드는데 이를 인터 프레임 코딩이라 한다. GOP는 I 프레임으로 시작하기 때문에 인코더는 다음 프레임을 예상해서 진행할 수 있다. 일반적으로 시간상의 순방향 참조(과거의 프레임을 참조)를 사용하는 P 프레임에 의해 참조된다. 양방향 참조를 갖는 B 프레임은 과거와 미래의 I 프레임 혹은 P 프레임을 참조한다. 각 프레임의 특징은 다음과 같이 요약할 수 있다.
I 프레임: 다른 프레임을 참조하지 않고 해당 프레임 내의 정보를 바탕으로 부호화하는 인트라 프레임 코딩(intra-frame coding)을 사용하기 때문에 프레임 중에서 크기가 가장 크고 많은 정보를 포함하고 있다.
P 프레임: 이전의 I 프레임 혹은 P 프레임을 기준으로 바뀐 정보만을 가지고 코딩되기 때문에 I 프레임에 비해 적은 정보를 가지고 있고 크기도 더 작다.
B 프레임: I 프레임과 P 프레임 사이의 차이를 보상해주기 위한 정보를 가지며 다른 프레임이 참조하지 않으므로 정보의 우선순위가 낮다.
이처럼 프레임 별로 포함하고 있는 정보의 양과 코딩 방식의 차이 때문에 MPEG 데이터는 프레임 유형별로 우선 순위가 다르다. 그러므로 MPEG 압축을 사용한 동영상의 전송 시에는 네트워크 단의 혼잡 상황에서 I 프레임을 보호하는 것이 중요하다.
이 때, 본 발명에 따르면, I 프레임에 우선 순위 또는 가중치를 부여하여 I 프레임의 패킷을 우선적으로 전송하는 것으로 스케쥴링함으로써, I 프레임을 보호할 수 있다.
도 3은 대상 패킷들의 지체 시간의 일예를 나타낸 도면이다.
도 4는 대상 패킷들에 대한 스케쥴링 결과의 일예를 나타낸 도면이다.
도 3을 참조하면, CBR은 일반적인(멀티미디어 데이터가 아닌 비-멀티미디어 데이터) 데이터 패킷을 나타내며, I, P, B는 각각 멀티미디어 데이터의 I, P, B 프레임에 속하는 패킷을 나타낸다.
지체 시간이 최대 허용 시간(Bound)보다 큰 S5에서의 B(S5.2) 프레임 패킷과 S6의 패킷(S6.3)은 오버플로우로 인정되어 큐에서 제거된다. 비-멀티미디어 데이터에서의 최대 허용 시간이란 패킷이 큐에 머무를 수 있는 시간, 즉, 해당 플로에 할당되는 큐에서 오버플로우가 발생하기 전까지의 시간을 의미한다.
S6의 세 개의 패킷들(S6.1, S6.2, S6.3)은 재생 시간에 영향을 받지 않는 비-멀티미디어 데이터이므로, 최대 허용 시간만 초과하지 않으면 지체 시간이 임계값보다 큰 경우에도 정상 모드로 처리된다. 따라서, S6.1 및 S6.2는 정상 모드로 처리된다.
지체 시간이 임계값(Threshold)보다 큰 패킷들 중에서 S3의 I 프레임 패킷(S3.1)과 S4의 P 프레임 패킷(S4.2)은 긴급 모드로 처리될 뿐만 아니라, 중요도도 다른 패킷들에 비해 상대적으로 높기 때문에 다른 패킷들보다 우선적으로 스케줄링 될 수 있다.
긴급 모드에서는 지체 시간과 관계없이 패킷이 속한 프레임 종류(유형, 중요도)에 따라 우선 순위가 결정된다. MPEG 데이터의 중요도를 보면 I > P > B 순서이므로 S3의 I 프레임 패킷(S3.1) 및 S4의 P 프레임 패킷(S4.2) 순서로 스케줄링된다. 긴급 모드에 있는 패킷이 모두 전송되고 나면 남아있는 플로의 패킷들 중에서 지체 시간이 가장 긴 순서대로 스케줄링 된다.
정상 모드에서의 스케줄링 순서는 데이터 패킷의 종류에 영향을 받지 않으므로 이후의 스케줄링은 지체 시간과 채널의 사용 빈도에 따라 그 순서가 정해진다. 도 4는 각각 패킷의 크기가 같다고 가정했을 때, 본 발명에 따른 스케쥴링 순서를 도시한 것이다.
정상 모드에서, S6의 CBR(S6.1)는 S1, S5의 패킷들과 지체 시간이 같지만, 이전에 채널을 사용한 이력이 있기 때문에 셋 중에서 스케쥴링 순서가 가장 느리다. S1의 패킷(S1.1)과 S5의 I 프레임 패킷(S5.1)은 지체 시간이 같고, 둘 다 이 전에 채널을 사용한 이력이 없기 때문에 어느 것을 선택해도 무방하다. 그러나 S2의 패킷과 S4의 B프레임 패킷은 지체 시간이 같지만, S4는 이전에 P 프레임 패킷을 전송하기 위해 채널을 사용했기 때문에 S2의 패킷이 먼저 전송된다.
본 발명에 따른 스케쥴링 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통 상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
도 1은 본 발명의 일실시예에 따른 스케쥴링 방법을 나타낸 동작 흐름도이다.
도 2는 MPEG 데이터에 포함된 I 프레임, P 프레임 및 B 프레임을 개념적으로 나타낸 도면이다.
도 3은 대상 패킷들의 지체 시간의 일예를 나타낸 도면이다.
도 4는 대상 패킷들에 대한 스케쥴링 결과의 일예를 나타낸 도면이다.
Claims (9)
- 대상 패킷들이 재생될 때까지 남아 있는 지체(delayed) 시간을 고려하여 상기 대상 패킷들에 대하여 전송되는 순서와 관련된 우선권을 부여하는 단계;상기 대상 패킷들에 대하여 디코딩 과정에서 영향력과 관련된 중요도를 인지하는 단계; 및상기 대상 패킷들에 상기 우선권이 부여되었는지 여부 및 상기 인지된 중요도 기초로 상기 대상 패킷들을 스케쥴링하는 단계를 포함하는 것을 특징으로 하는 스케쥴링 방법.
- 제1항에 있어서,상기 대상 패킷들에 대하여 상기 우선권을 부여하는 단계는상기 대상 패킷들이 멀티미디어 데이터 형식을 갖는 패킷들인지 여부 및 상기 대상 패킷들의 크기를 더 고려하여 상기 우선권을 부여하는 단계인 것을 특징으로 하는 스케쥴링 방법.
- 제1항에 있어서,상기 대상 패킷들에 대하여 상기 우선권을 부여하는 단계는상기 대상 패킷들 중 미리 설정된 최대 허용 시간보다 큰 상기 지체 시간을 갖는 패킷을 추출하고, 상기 추출된 패킷을 상기 대상 패킷들로부터 제외하여 상기 대상 패킷들에 대하여 상기 우선권을 부여하는 단계인 것을 특징으로 하는 스케쥴링 방법.
- 제1항에 있어서,상기 대상 패킷들에 대하여 상기 우선권을 부여하는 단계는상기 대상 패킷들의 지체 시간을 미리 설정된 임계값과 비교하여 상기 우선권을 부여하는 단계인 것을 특징으로 하는 스케쥴링 방법.
- 제1항에 있어서,상기 중요도를 인지하는 단계는상기 대상 패킷들 중 적어도 하나에서 오류 또는 손실이 발생하는 경우, 상기 발생된 오류 또는 손실이 상기 대상 패킷들을 재생 또는 실행하는 데에 미치는 영향력을 고려하여 상기 중요도를 인지하는 단계인 것을 특징으로 하는 스케쥴링 방법.
- 제1항에 있어서,상기 중요도를 인지하는 단계는복수의 패킷들에 대한 상기 중요도를 기록한 테이블을 기초로 상기 대상 패킷들에 대한 상기 중요도를 인지하는 단계인 것을 특징으로 하는 스케쥴링 방법.
- 제1항에 있어서,상기 대상 패킷들 중 적어도 하나의 패킷은 멀티미디어 데이터이고,상기 멀티미디어 데이터는 MPEG(Moving Picture Experts Group) 데이터로서 I 프레임, P 프레임 및 B 프레임을 포함하고,상기 대상 패킷들을 스케쥴링하는 단계는상기 I 프레임, 상기 P 프레임 및 상기 B 프레임의 순서에 따라 가중치를 두어 상기 대상 패킷들을 스케쥴링하는 단계인 것을 특징으로 하는 스케쥴링 방법.
- 제1항에 있어서,상기 대상 패킷들을 스케쥴링하는 단계는상기 대상 패킷들에 의해 사용된 채널들의 사용 빈도를 고려하여 상기 대상 패킷들을 스케쥴링하는 단계인 것을 특징으로 하는 스케쥴링 방법.
- 제1항 내지 제8항 중 어느 한 항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20080076072A KR101003922B1 (ko) | 2008-08-04 | 2008-08-04 | 멀티미디어 서비스를 제공하기 위한 스케쥴링 방법 |
JP2008334740A JP2010041708A (ja) | 2008-08-04 | 2008-12-26 | マルチメディアサービスを提供するためのスケジューリング方法 |
US12/436,313 US20100027428A1 (en) | 2008-08-04 | 2009-05-06 | Scheduling method of providing multimedia service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20080076072A KR101003922B1 (ko) | 2008-08-04 | 2008-08-04 | 멀티미디어 서비스를 제공하기 위한 스케쥴링 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100015147A true KR20100015147A (ko) | 2010-02-12 |
KR101003922B1 KR101003922B1 (ko) | 2010-12-30 |
Family
ID=41608256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20080076072A KR101003922B1 (ko) | 2008-08-04 | 2008-08-04 | 멀티미디어 서비스를 제공하기 위한 스케쥴링 방법 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20100027428A1 (ko) |
JP (1) | JP2010041708A (ko) |
KR (1) | KR101003922B1 (ko) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016042687A1 (ja) * | 2014-09-19 | 2016-03-24 | 日本電気株式会社 | 送信装置及びその制御方法 |
US9774650B2 (en) | 2014-09-23 | 2017-09-26 | Cisco Technology, Inc. | Frame priority system |
CN106954232B (zh) * | 2017-04-05 | 2020-03-17 | 北京邮电大学 | 一种时延优化的资源分配方法 |
CN115473818B (zh) * | 2021-06-10 | 2024-03-26 | 维沃移动通信有限公司 | 流量特征分析结果的获取方法、装置及网络侧设备 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5412720A (en) * | 1990-09-28 | 1995-05-02 | Ictv, Inc. | Interactive home information system |
KR0150702B1 (ko) * | 1995-01-25 | 1998-10-15 | 구자홍 | 브이오디 시스템의 고속 정/역 주행 제어 방법 |
US6157771A (en) * | 1996-11-15 | 2000-12-05 | Futuretel, Inc. | Method and apparatus for seeking within audiovisual files |
US6023731A (en) * | 1997-07-30 | 2000-02-08 | Sun Microsystems, Inc. | Method and apparatus for communicating program selections on a multiple channel digital media server having analog output |
US6104757A (en) * | 1998-05-15 | 2000-08-15 | North Carolina State University | System and method of error control for interactive low-bit rate video transmission |
US7031306B2 (en) * | 2000-04-07 | 2006-04-18 | Artel Video Systems, Inc. | Transmitting MPEG data packets received from a non-constant delay network |
US20020164024A1 (en) * | 2000-08-25 | 2002-11-07 | Hiroshi Arakawa | Data transmission method and data relay method |
JP2002135320A (ja) * | 2000-10-27 | 2002-05-10 | Sony Corp | 送信装置、通信システムおよび送信方法 |
JP2002141945A (ja) * | 2000-11-06 | 2002-05-17 | Sony Corp | データ送信装置、およびデータ送信方法、並びにプログラム記憶媒体 |
JP3844425B2 (ja) * | 2001-10-02 | 2006-11-15 | 日本電信電話株式会社 | マルチレート対応無線基地局装置 |
KR100782234B1 (ko) * | 2001-10-08 | 2007-12-05 | 엘지전자 주식회사 | 피브이알에서의 방송장애구간 자동처리 방법 |
US7404001B2 (en) * | 2002-03-27 | 2008-07-22 | Ericsson Ab | Videophone and method for a video call |
TWI221391B (en) | 2002-03-27 | 2004-09-21 | Benq Corp | System and method for scheduling and transmitting protocol data units |
US7164919B2 (en) * | 2002-07-01 | 2007-01-16 | Qualcomm Incorporated | Scheduling of data transmission for terminals with variable scheduling delays |
WO2004010250A2 (en) * | 2002-07-18 | 2004-01-29 | Koninklijke Philips Electronics N.V. | Adaptive dropping of prioritized transmission packets |
JP2004147275A (ja) * | 2002-08-30 | 2004-05-20 | Matsushita Electric Ind Co Ltd | パケット送信スケジューリング方法および基地局装置 |
US7161957B2 (en) * | 2003-02-10 | 2007-01-09 | Thomson Licensing | Video packets over a wireless link under varying delay and bandwidth conditions |
JP2005086438A (ja) * | 2003-09-08 | 2005-03-31 | Nec Corp | パケット送信端末 |
US7773581B2 (en) * | 2004-03-19 | 2010-08-10 | Ericsson Ab | Method and apparatus for conferencing with bandwidth control |
KR100651486B1 (ko) * | 2004-12-07 | 2006-11-29 | 삼성전자주식회사 | 네트워크를 통해 멀티미디어 컨텐츠를 전송하는 장치 및방법 |
CA2600776C (en) * | 2005-03-10 | 2012-07-17 | Qualcomm Incorporated | A decoder architecture for optimized error management in streaming multimedia |
US8780997B2 (en) * | 2005-11-18 | 2014-07-15 | Apple Inc. | Regulation of decode-side processing based on perceptual masking |
WO2007072255A2 (en) * | 2005-12-23 | 2007-06-28 | Koninklijke Philips Electronics N.V. | A device for and a method of processing an input data stream comprising a sequence of input frames |
-
2008
- 2008-08-04 KR KR20080076072A patent/KR101003922B1/ko not_active IP Right Cessation
- 2008-12-26 JP JP2008334740A patent/JP2010041708A/ja active Pending
-
2009
- 2009-05-06 US US12/436,313 patent/US20100027428A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
KR101003922B1 (ko) | 2010-12-30 |
JP2010041708A (ja) | 2010-02-18 |
US20100027428A1 (en) | 2010-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10298969B2 (en) | Architecture and method for high performance on demand video transcoding | |
JP4971799B2 (ja) | データパケットに関する情報を使用してデータパケットの送信順序を決定する方法およびシステム | |
US7720065B2 (en) | Method and apparatus for biasing of network node packet prioritization based on packet content | |
US9060189B2 (en) | Multiplexed video streaming | |
US7652993B2 (en) | Multi-stream pro-active rate adaptation for robust video transmission | |
CN104735470B (zh) | 一种流媒体数据传输方法及装置 | |
JP5763540B2 (ja) | Hrd情報共有およびビット割付け待機を用いたマルチスレッド・ビデオ符号化 | |
US12075099B2 (en) | System for high performance on-demand video transcoding | |
WO2004077831A1 (ja) | 映像伝送システム、映像送信装置、映像受信装置および映像伝送方法 | |
US20080181302A1 (en) | Methods and Systems for Rate-Adaptive Transmission of Video | |
US20090110061A1 (en) | Method and apparatus for predicting video traffic | |
KR101003922B1 (ko) | 멀티미디어 서비스를 제공하기 위한 스케쥴링 방법 | |
JP2008085673A (ja) | 動画像符号化装置及びその方法 | |
US20110067072A1 (en) | Method and apparatus for performing MPEG video streaming over bandwidth constrained networks | |
JP2009296286A (ja) | ビットレート変換装置及び変換方法 | |
JP7173028B2 (ja) | 送信装置および送信方法、並びにプログラム | |
Li et al. | Cross-layer scheduling for multiuser H. 264 video transmission over wireless networks | |
Liebl et al. | Radio link buffer management and scheduling for wireless video streaming | |
JP2007318470A (ja) | サーバ装置、送信順序決定方法およびコンテンツ配信システム | |
JPWO2008053557A1 (ja) | 動画像再符号化装置、動画像再符号化方法、動画像再符号化プログラムおよび動画像再符号化プログラムを格納した記録媒体 | |
Liebl et al. | Joint buffer management and scheduling for wireless video streaming | |
US11653041B2 (en) | Jitter management in a statistical multiplexer employing an IP network | |
US9661348B2 (en) | Method and system for generating side information at a video encoder to differentiate packet data | |
JP2008085378A (ja) | 通信装置及びその制御方法、通信制御装置及びその制御方法、プログラム、記憶媒体 | |
Kamiyama et al. | An efficient deterministic bandwidth allocation method in interactive video-on-demand systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130913 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140818 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20151001 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20160912 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |