KR101003922B1 - 멀티미디어 서비스를 제공하기 위한 스케쥴링 방법 - Google Patents

멀티미디어 서비스를 제공하기 위한 스케쥴링 방법 Download PDF

Info

Publication number
KR101003922B1
KR101003922B1 KR20080076072A KR20080076072A KR101003922B1 KR 101003922 B1 KR101003922 B1 KR 101003922B1 KR 20080076072 A KR20080076072 A KR 20080076072A KR 20080076072 A KR20080076072 A KR 20080076072A KR 101003922 B1 KR101003922 B1 KR 101003922B1
Authority
KR
South Korea
Prior art keywords
frame
scheduling
scheduler
packets
priority
Prior art date
Application number
KR20080076072A
Other languages
English (en)
Other versions
KR20100015147A (ko
Inventor
최상방
신광식
Original Assignee
인하대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인하대학교 산학협력단 filed Critical 인하대학교 산학협력단
Priority to KR20080076072A priority Critical patent/KR101003922B1/ko
Priority to JP2008334740A priority patent/JP2010041708A/ja
Priority to US12/436,313 priority patent/US20100027428A1/en
Publication of KR20100015147A publication Critical patent/KR20100015147A/ko
Application granted granted Critical
Publication of KR101003922B1 publication Critical patent/KR101003922B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/56Queue scheduling implementing delay-aware scheduling
    • H04L47/564Attaching a deadline to packets, e.g. earliest due date first
    • H04L47/566Deadline varies as a function of time spent in the queue
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling 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/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content 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/26208Content 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/26233Content 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content 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/2625Content 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue 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)
  • Mobile Radio Communication Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

스케쥴링 방법이 제공된다. 상기 스케쥴링 방법은 대상 패킷들이 재생될 때까지 남아 있는 지체(delayed) 시간을 고려하여 상기 대상 패킷들에 대하여 전송되는 순서와 관련된 우선권을 부여하는 단계, 상기 대상 패킷들에 대하여 디코딩 과정에서 영향력과 관련된 중요도를 인지하는 단계 및 상기 대상 패킷들에 상기 우선권이 부여되었는지 여부 및 상기 인지된 중요도 기초로 상기 대상 패킷들을 스케쥴링하는 단계를 포함한다. 상기 스케쥴링 방법은 지체 시간 및 중요도를 모두 고려하여 스케쥴링을 수행함으로써, 효율적으로 멀티미디어 서비스를 비롯한 데이터 통신 서버를 제공할 수 있다.
스케쥴링, 중요도, 지체 시간, 지연 시간, 패킷, MPEG, 프레임, 멀티미디어

Description

멀티미디어 서비스를 제공하기 위한 스케쥴링 방법{METHOD OF SCHEDULLING PROVIDING MULTIMEDIA SERVICE}
본 발명은 효율적이고 높은 품질로 멀티미디어 서비스를 제공하기 위한 기술에 관한 것이다.
큐(대기열)에 들어오는 각각의 패킷에 대하여 아래와 같은 방법으로 시작 태그와 종료 태그가 계산된다. 플로 in번째 패킷이 A(t i ,n) 시간에 큐에 도달하는 경우, 시작 태그(si ,n)와 종료 태그(fi ,n)는 각각 식 (1)과 같이 계산된다.
(1)
Figure 112008055975968-pat00001
위 식에서 L i ,n 는 플로 in번째 패킷의 크기이다.
각 플로에 대해 시작 태그와 종료 태그의 계산이 끝나고 난 후, 스케줄링 방식들 중 하나인 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)과 같이 나타낼 수 있다.
Figure 112008055975968-pat00002
(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)는 상수 값이다.
Figure 112008055975968-pat00003
(2)
상기 수학식 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)

  1. 무선 네트워크에서 사용되는 장치를 위한 스케쥴러의 스케쥴링 방법에 있어서,
    상기 스케쥴러가 MPEG 데이터에 포함된 I 프레임, P 프레임 및 B 프레임 각각의 지체(delayed) 시간 및 크기를 고려하여 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임 중 적어도 하나에 대하여 전송되는 순서와 관련된 우선권을 부여하는 단계;
    상기 스케쥴러가 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임 각각에서 발생되는 오류 또는 손실이 다른 프레임들의 디코딩 과정에서 상기 다른 프레임들에 얼마나 많은 영향을 미치는지를 고려하여 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임 각각의 중요도를 인지하는 단계; 및
    상기 스케쥴러가 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임 각각에 상기 우선권이 부여되었는지 여부 및 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임 각각의 중요도를 기초로 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임을 스케쥴링하는 단계
    를 포함하는 것을 특징으로 하는 무선 네트워크에서 사용되는 장치를 위한 스케쥴러의 스케쥴링 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 스케쥴러가 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임에 대하여 상기 우선권을 부여하는 단계는
    상기 스케쥴러가 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임 중 미리 설정된 최대 허용 시간보다 큰 상기 지체 시간을 갖는 프레임을 추출하고, 상기 추출된 프레임을 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임로부터 제외하는 단계
    를 포함하는 것을 특징으로 하는 무선 네트워크에서 사용되는 장치를 위한 스케쥴러의 스케쥴링 방법.
  4. 제1항에 있어서,
    상기 스케쥴러가 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임에 대하여 상기 우선권을 부여하는 단계는
    상기 I 프레임, 상기 P 프레임 및 상기 B 프레임 각각의 지체 시간을 미리 설정된 임계값과 비교하여 상기 우선권을 부여하는 단계인 것을 특징으로 하는 무선 네트워크에서 사용되는 장치를 위한 스케쥴러의 스케쥴링 방법.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 제1항에 있어서,
    상기 스케쥴러가 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임을 스케쥴링하는 단계는
    상기 I 프레임, 상기 P 프레임 및 상기 B 프레임 각각에 의해 사용된 채널들의 사용 빈도를 고려하여 상기 I 프레임, 상기 P 프레임 및 상기 B 프레임을 스케쥴링하는 단계인 것을 특징으로 하는 무선 네트워크에서 사용되는 장치를 위한 스케쥴러의 스케쥴링 방법.
  9. 제1항, 제3항, 제4항 또는 제8항 중 어느 한 항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR20080076072A 2008-08-04 2008-08-04 멀티미디어 서비스를 제공하기 위한 스케쥴링 방법 KR101003922B1 (ko)

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 KR20100015147A (ko) 2010-02-12
KR101003922B1 true 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)

* Cited by examiner, † Cited by third party
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 维沃移动通信有限公司 流量特征分析结果的获取方法、装置及网络侧设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030185214A1 (en) 2002-03-27 2003-10-02 Beno Corporation System and method for scheduling protocol data units

Family Cites Families (22)

* Cited by examiner, † Cited by third party
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
AU2001276731A1 (en) * 2000-08-25 2002-03-04 Matsushita Electric Industrial Co., Ltd. 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
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 삼성전자주식회사 네트워크를 통해 멀티미디어 컨텐츠를 전송하는 장치 및방법
DE602006011865D1 (de) * 2005-03-10 2010-03-11 Qualcomm Inc Decoder-architektur für optimiertes fehlermanagement in multimedia-strömen
US8780997B2 (en) * 2005-11-18 2014-07-15 Apple Inc. Regulation of decode-side processing based on perceptual masking
KR20080091153A (ko) * 2005-12-23 2008-10-09 코닌클리케 필립스 일렉트로닉스 엔.브이. 입력 프레임들의 시퀀스를 포함하는 입력 데이터 스트림을처리하는 디바이스 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030185214A1 (en) 2002-03-27 2003-10-02 Beno Corporation System and method for scheduling protocol data units

Also Published As

Publication number Publication date
US20100027428A1 (en) 2010-02-04
JP2010041708A (ja) 2010-02-18
KR20100015147A (ko) 2010-02-12

Similar Documents

Publication Publication Date Title
US10298969B2 (en) Architecture and method for high performance on demand video transcoding
JP4971799B2 (ja) データパケットに関する情報を使用してデータパケットの送信順序を決定する方法およびシステム
CN109660879B (zh) 直播丢帧方法、***、计算机设备和存储介质
US9060189B2 (en) Multiplexed video streaming
JP5100311B2 (ja) 動画像データ送信方法、通信装置、及びプログラム
US11166057B2 (en) System for high performance on-demand video transcoding
JP2008533853A (ja) 先読みを伴う準一定品質のレート制御
KR100592547B1 (ko) 스트리밍을 위한 패킷 스케줄링 방법
JP5064305B2 (ja) ビットレート変換装置及び変換方法
KR101003922B1 (ko) 멀티미디어 서비스를 제공하기 위한 스케쥴링 방법
JP2008085673A (ja) 動画像符号化装置及びその方法
US20110067072A1 (en) Method and apparatus for performing MPEG video streaming over bandwidth constrained networks
US20060165172A1 (en) Method for transmitting data without jitter in synchronous Ethernet
KR20200058431A (ko) 송신 장치 및 송신 방법, 그리고 프로그램
Liebl et al. Radio link buffer management and scheduling for wireless video streaming
US6674804B1 (en) Method for generating a multiplexed sequence of media units
Jansang et al. Adjustable TXOP mechanism for supporting video transmission in IEEE 802.11 e HCCA
JP2007318470A (ja) サーバ装置、送信順序決定方法およびコンテンツ配信システム
Liebl et al. Joint buffer management and scheduling for wireless video streaming
JP4963585B2 (ja) 通信装置及び通信のための制御方法、プログラム、記憶媒体
JPWO2008053557A1 (ja) 動画像再符号化装置、動画像再符号化方法、動画像再符号化プログラムおよび動画像再符号化プログラムを格納した記録媒体
US9661348B2 (en) Method and system for generating side information at a video encoder to differentiate packet data
Changuel et al. End-to-end stochastic scheduling of scalable video overtime-varying channels
Kamiyama et al. An efficient deterministic bandwidth allocation method in interactive video-on-demand systems
CN101690232A (zh) 运动图像数据编码设备及其控制方法

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