[go: up one dir, main page]

KR20050023429A - 우선 순위화 송신 패킷의 적응성 드롭핑 - Google Patents

우선 순위화 송신 패킷의 적응성 드롭핑 Download PDF

Info

Publication number
KR20050023429A
KR20050023429A KR10-2005-7000809A KR20057000809A KR20050023429A KR 20050023429 A KR20050023429 A KR 20050023429A KR 20057000809 A KR20057000809 A KR 20057000809A KR 20050023429 A KR20050023429 A KR 20050023429A
Authority
KR
South Korea
Prior art keywords
information
frame
packet
time
packets
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
KR10-2005-7000809A
Other languages
English (en)
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 KR10-2005-7000809A priority Critical patent/KR20050023429A/ko
Publication of KR20050023429A publication Critical patent/KR20050023429A/ko
Abandoned legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

일련의 정보 부분은 송신기에 제공되고, 정보 부분은 수신기에 이용가능할 필요가 있는 임계 시간을 갖는다. 송신기는, 정보 부분이 임계 시간 이전에 수신기에 이용가능하게 될 시간에 송신기에 의해 송신될 수 있는지를 추정한다. 그 다음에, 송신기는, 정보 부분이 임계 시간 이전에 수신기에 이용가능하게 될 시간에 송신될 것임을 추정한 경우 단지 상기 정보를 수신기로 송신한다.

Description

우선 순위화 송신 패킷의 적응성 드롭핑{ADAPTIVE DROPPING OF PRIORITIZED TRANSMISSION PACKETS}
본 발명은, 실시간 표현(presentation)을 위해 인터넷과 같은 가변 지연 네트워크, 또는 무선 LAN(근거리 네트워크)과 같은 패킷 손실 네트워크를 통한 미디어 패킷의 송신 분야에 관한 것이다.
MPEG 인코딩 방송 또는 라이브 공연과 같은 실시간 멀티미디어 표현에 대해, 각 비디오 및 오디오 프레임 부분(프레임 또는 필드)은, 상기 프레임 부분의 표현이 연속적인 오디오 및 비디오를 제공하기 위해 시작될 필요가 있는 표현 시간을 갖는다. 시간에 맞게(on time) 프레임 부분을 제공하기 위해, 각 프레임 부분은, 프레임 부분의 모든 패킷이 프레임 부분의 디코딩을 위한 디코더로의 전송에 이용가능해야 하는 디코딩 시간을 갖는다.
인터넷 또는 무선 LAN과 같은 네트워크는 가변 대역폭을 갖는 경향이 있어서 가변 지연을 초래한다. 대역폭이 너무 억제되면, 패킷은 제시간에 도달하지 못하게 되고, 프레임은 시간에 맞게 디코딩되고 제공될 수 없다. 일반적으로, 비디오에 대해, 마지막 프레임은 간단히 드롭(dropped)되고, 이전 프레임은 반복되어, 인간이 인식한 표현 품질에서 손실을 초래한다.
무선 LAN에 대해, 지연 및 송신 실패는 공통적이고 대역폭은 변경된다. 첫째로, 수신된 신호 전력, 이에 따라 채널 처리량은 송신자와 수신자 사이의 거리가 증가함에 따라 감소한다. 두 번째로, 동일한 무선 LAN 네트워크에서의 2개의 송신기 사이의 충돌이 발생하고, 재송신 이전에 랜덤 지연에 의해 다루어진다. 세 번째로, 패킷 에러는 랜덤 간섭 뿐 아니라 동일한 주파수 대역에서 신호를 방출하는 다른 디바이스로부터의 간섭으로 인해 발생한다. 패킷 에러의 발생은 특히 802.11b 네트워크에서 관찰되는데, 상기 네트워크는, 마이크로파 오븐, 2.4GHz의 무선 전화기 및 다른 802.11b 네트워크와 같은 많은 다른 디바이스가 동작하는 2.4GHz ISM 대역을 이용한다. 무선 LAN에 대해, 가변 대역폭으로 인한 패킷 지연이 있을 뿐 아니라, 종종 재송신 한계로 인해 패킷은 송신되지 못하게 된다.
802.11b 수신기의 MAC(media access: 매체 액세스) 층은 어떠한 에러 정정도 하지 못하게 된다. 패킷이 수신기 MAC 층을 에러 체크하지 못하면, 수신기는 긍정 응답(acknowledgement)을 송신하지 않고, 802.11b 송신기의 MAC 층은 패킷을 재송신한다. 송신기는, 긍정 응답이 수신될 때까지 또는 미리 결정된 재송신 한계에 도달될 때까지 패킷을 계속해서 재송신한다.
재송신에 대한 필요성을 줄이기 위해 무선 LAN을 통한 매체 송신을 위한 에러 정정을 추가하는 것이 제안되었다. 한가지 제안된 에러 정정 기술은 오디오/비디오 정보를 2개의 층으로 분리시키는 것과, 이러한 층을 상이한 스트림으로서 송신하는 것을 수반한다. 하나의 스트림은 더 중요한 정보를 포함할 것이고, 다른 스트림은 덜 중요한 정보를 포함할 것이다. 더 중요한 스트림에 대해서는 많은 에러 보호가 제공되고, 적은 에러 보호는 덜 중요한 스트림에 제공된다{이것은 부등(unequal) 에러 보호라 불림}. 오버헤드(overhead)가 증가하지만, 오디오/비디오 품질은 더욱 더 증가하여, 주어진 오디오/비디오 품질에 대해, 오버헤드는 실제로 감소한다.
다른 제안은, 처리량이 부적절할 때 모든 더 높은 우선 순위의 패킷을 송신하고 모든 더 낮은 우선 순위의 패킷을 드롭하는 것이다.
당업자들은 전부 본 명세서에 병합되어 있는 WO 01/65848 및 WO 01/71981에 주의를 기울이게 된다. 이러한 문헌은, 비디오 스트림을 높은 및 낮은 우선 순위의 스트림으로 분리하고, 낮은 우선 순위의 스트림에 비해 높은 우선 순위의 스트림에서의 에러를 감소시키기 위한 구성을 기재한다.
도 1은 본 발명의 방법을 도시한 도면.
도 2는 본 발명의 예시적인 송신기의 관련 부분을 도시한 도면.
도 3은 본 발명의 예시적인 수신기의 관련 부분을 도시한 도면.
도 4는 본 발명의 예시적인 시스템의 몇몇 구성요소를 도시한 도면.
도 5는 본 발명의 예시적인 송신자의 네트워크 스택을 도시한 도면.
도 6은 본 발명의 예시적인 수신기의 구조를 도시한 도면.
도 7은 우선 순위화 패킷을 적응성으로 드롭하기 위한 본 발명의 예시적인 알고리즘을 도시한 도면.
도 8은 도 7의 알고리즘의 결정 모듈의 변형을 도시한 도면.
본 발명에서, 일련의 정보 부분은 송신기에 제공되고, 상기 정보 부분은 수신기에 이용가능할 필요가 있는 임계 시간(critical times)을 갖는다. 송신기는, 정보 부분이 임계 시간 이전에 수신기에 이용가능하게 될 시간에 송신기에 의해 송신될 수 있는지를 추정한다. 그 다음에, 송신기는, 임계 시간 이전에 수신기에 이용가능하게 될 시간에 정보 부분이 송신될 것인지를 추정한 경우 단지 정보를 수신기로 송신한다.
송신기가, 대역폭 및 지연 필요조건이 모든 정보가 수신기에 이용가능하지는 못하게 하는 것으로 결정할 때, 송신기는 유용하지 않을 패킷을 드롭한다.
예를 들어, 비디오-계층화 해법에서, 송신기가, 덜 중요한 비디오 정보가 (지연 조건 및 다른 필요조건으로 인해) 유용하지 않음을 결정하면, 송신기는 결코 송신하지 않는다. 모든 높은 우선 순위의 패킷이 제시간에 송신될 수 없는 경우 심지어 높은 우선 순위의 패킷조차 드롭될 것이다.
본 발명에서, 송신기는, 패킷 송신이 지연 필요조건을 충족하는지를 예측하기 위해 비디오 스트림의 지연 필요조건을 인식해야 한다. 지연 필요조건은 표준화될 수 있거나, 수신기는 지연 필요조건의 표시(indication)를 송신기로 송신할 필요가 있다.
2가지 경합하는 목적이 있다. 첫째로, 모든 기본 층 패킷의 성공적인 수신은 최대화될 필요가 있다. 두 번째로, 개선 층 패킷의 폐기는 최소화될 필요가 있다. 이들 목적 사이의 적절한 균형은 송신시 오버헤드를 실질적으로 증가시키지 않고도 처리량을 증가시킨다. 본 발명은 이들 2가지 목적의 균형을 잡아서, 인식된 표현 품질은 모든 패킷을 송신하려고 시도할 때 품질에 관해 증가된다.
본 발명의 추가 양상 및 장점은, 다음 도면을 참조하여 아래의 상세한 설명으로부터 당업자에게 쉽게 명백해질 것이다.
도 1은 본 발명의 예시적인 방법을 도시한다. 단계(101)에서, 일련의 다수의 정보 부분은 송신기에 제공된다. 정보 부분은 수신기에 이용가능할 필요가 있을 때 임계 시간을 갖는다. 각 프레임 부분은, 표현 시간과, 디코딩 프레임 부분이 표현 시간에 이용가능할 것임을 디코딩이 보장하기 시작할 필요가 있는 디코딩 시간을 가질 수 있으며, 상기 디코딩 시간 및 표현 시간은 표현의 플레이 시간에 비례한다.
정보 부분은 멀티미디어 표현에 대한 미디어 프레임 부분(프레임 또는 프레임의 필드)의 패킷일 수 있다. 그러한 표현은 다수의 프레임 부분을 포함하고, 각 프레임 부분은 미디어 데이터의 다수의 패킷을 포함한다.
정보 부분을 제공하는 것은, 미디어 정보를 높은 우선 순위 및 낮은 우선 순위 부분으로 분리하는 것을 포함할 수 있다. 높은 우선 순위의 부분은 정보 부분을 디코딩하는데 필요한 소위 기본 층일 수 있고, 낮은 우선 순위의 부분은 디코딩된 정보 부분을 개선시키는데 사용된 소위 개선(enhancement) 층일 수 있다.
예를 들어, 미디어 프레임에 대한 정보 부분은 기본 층의 다수의 높은 우선 순위의 패킷, 및 개선 층의 다수의 낮은 우선 순위의 패킷을 포함할 수 있다. 프레임 부분의 모든 높은 우선 순위의 패킷은 프레임 부분을 디코딩하기 시작하기 위해 수신기에 이용가능해야 한다. 만약 모든 높은 우선 순위의 패킷이 이용가능하면, 또한 이용가능한 낮은 우선 순위의 패킷 전부는, 프레임 부분을 개선시키기 위해 디코더에 의해 사용될 수 있다. 상이한 우선 순위를 갖는 패킷은 프레임에 대해 연속적으로 인터리빙되어 제공될 수 있다. 대안적으로, 모든 더 높은 우선 순위의 패킷은 프레임의 임의의 더 낮은 우선 순위의 패킷을 제공하기 전에 제공될 수 있다. 이것은, 대역폭이 프레임의 모든 패킷을 송신하기에 부적절한 경우 어떤 패킷을 송신할 지에 대한 결정을 단순화시킨다.
단계(102)에서, 송신기는, 그 정보가 임계 시간 이전에 수신기에 이용가능하게 될 시간에 송신될 수 있는지를 추정한다.
상기 추정은, 목표 시간을 결정하는 것과, 전송 시간을 추정하는 것과, 현재 시간과 추정된 전송 시간의 합과 목표 시간을 비교하는 것을 포함할 수 있다. 목표 시간은, 정보 부분이 정보 부분을 디코딩하기 위해 수신기에 이용가능할 필요가 있을 때(디코딩 시간)에 관련된다. 추정된 전송 시간은, 정보 부분을 수신기로 송신하고 정보 부분을 디코딩하기 위해 정보 부분을 수신기에 이용가능하게 하는데 필요한 시간이다.
목표 시간은 수신기에 의해 제공된 시동(start-up) 버퍼링에 따라 좌우된다. 수신기 버퍼링은 일반적으로 저장 비용이 아닌 시동 제한에 의해 제한된다. 표현의 시청자는 수초를 초과하는 시동 시간에 종종 반감을 갖는다. 수신기 버퍼링을 증가시키는 것은 무선 채널의 처리량에 대한 단기간의 제약에 대한 효과를 감소시킨다. 수신기 버퍼링은 표준화되어, 송신기는 버퍼 한계를 인식한다. 대안적으로, 수신기는 버퍼링 한계의 표시(예를 들어, 시동 시간, 프로그램 플레이 시간, 버퍼 크기)를 송신기로 송신할 수 있다. 예를 들어, 시청자는, 표현 품질 저하에 대한 시청자의 혐오와 비교하여 시동을 느리게 하기 위해 자신의 혐오에 따라 시동 시간 선호도를 입력할 수 있고, 수신기는 시동 선호도를 송신기로 송신한다.
목표 시간은 정보 부분이 제공될 때의 시간에 기초할 수 있다. 미디어 프레임에 대해, 프레임의 패킷이 디코딩에 필요한 것으로 제공되어, 목표 시간을 패킷이 제공된 시간에 기초로 하는 것이 적당하다고 가정할 수 있다. 대안적으로, 디코딩 시간은 미디어 프레임의 패킷으로부터 판독될 수 있고, 목표 시간으로서 사용될 수 있다. 모든 높은 우선 순위의 패킷이 프레임을 디코딩하기 시작하기 위해 디코더에 있어야 하기 때문에, 목표 시간은 프레임의 모든 높은 우선 순위의 패킷에 대해 동일할 수 있다. 또한, 일반적으로, 모든 낮은 우선 순위의 패킷은 프레임을 개선시키기 위해 디코딩 시간에 이용가능해야 한다. 따라서, 목표 시간은, 프레임의 제 1 부분이 제공되는 시간으로부터 도출될 수 있고, 동일한 목표 시간은 프레임의 모든 패킷에 사용될 수 있다.
추정은 정보 부분의 우선 순위에 따를 수 있어서, 더 높은 우선 순위의 정보 부분은 더 낮은 우선 순위의 정보 부분보다 송신될 가능성이 더 있다. 예를 들어, 정보 부분에 대한 목표 시간 또는 추정된 전송 시간은 정보 부분의 우선 순위에 따라 (인자를 더하거나 인자를 곱함으로써) 조정될 수 있다. 예를 들어, 목표 시간은, 미디어 프레임의 제 1 패킷이 수신기의 버퍼링 시간에 도달하는 시간을 더함으로써 미디어 프레임에 대해 계산될 수 있다. 상이한 목표 시간은, 높은 우선 순위의 패킷에 대해 더 높고 낮은 우선 순위의 패킷에 대해 더 낮은 지연 허용오차와 버퍼링 시간을 곱함으로써 높은 우선 순위의 프레임 및 낮은 우선 순위의 프레임에 대해 계산될 수 있다.
정보 부분은 MPEG과 같은 GOP(Group Of Picture: 화상 그룹)에 기초하여 인코딩된 비디오 표현의 패킷일 수 있다. 그러한 인코딩에서, 임의의 다른 프레임의 디코딩과 관계없이 디코딩된 I-프레임, 및 이전 I-프레임의 디코딩에 기초하여 디코딩된 P-프레임, 및 이전 및 후속 I 또는 P-프레임에 기초하여 디코딩된 B-프레임을 포함하는 상이한 유형의 비디오 프레임(프레임 또는 프레임 필드)이 있다. 일반적으로, 각 P-프레임에는 2개의 B-프레임이 있다. 따라서, I-프레임은, GOP에서의 모든 다른 프레임의 디코딩이 GOP의 I-프레임을 디코딩하는 것에 따르기 때문에 가장 중요한 프레임이다. P-프레임은, 최대 4개의 B-프레임의 디코딩이 각 P-프레임의 디코딩에 따르기 때문에 또한 중요하다.
GOP 인코딩된 비디오 프레임에 대해, 상이한 우선 순위를 갖는 패킷(기본 층 대 개선 층 패킷)에 대해 전술한 방식과 유사한 방식으로, 추정은 비디오 프레임의 유형에 따를 수 있다.
추정된 전송 시간은 고정될 수 있고, 최대 패킷 크기 및 재송신 한계에 기초할 수 있다. 대안적으로, 추정된 송신 시간은, 예를 들어 이전 패킷이 송신될 때의 재송신 카운트에 기초하여 동적으로 추정될 수 있다. 예를 들어, 이전의 미리 결정된 수의 패킷의 평균 송신 시간이 사용될 수 있거나, 그 평균은, 더 많은 가중치가 더 최근에 송신된 패킷에 할당되는 시간 가중치 평균일 수 있다.
가변 크기의 패킷에 대해, 패킷의 추정된 전송 시간은 패킷 크기에 따라 좌우될 수 있다. 더 큰 패킷은 송신하기에 더 오래 걸리고, 많은 재송신을 필요로 하는 많은 에러를 갖는 경향이 있다. 패킷 크기에 대한 조정은 미리 결정될 수 있거나, 동일한 크기의 범위에서 미리 결정된 수의 이전 패킷의 평균 또는 시간 가중치 평균에 기초할 수 있다.
단계(103)에서, 패킷은 추정에 따라 송신된다. 즉, 임계 시간에 이용가능하게 될 시간에 송신되어 수신기에 의해 처리될 수 있는 패킷은 송신되고, 임계 시간까지 송신되어 수신기에 의해 처리될 수 없는 패킷은 드롭된다.
상이한 우선 순위를 갖는 패킷을 구비한 미디어 프레임에 대해, 프레임의 모든 더 높은 우선 순위의 패킷은 임의의 더 낮은 우선 순위의 패킷을 송신하기 이전에 송신될 수 있다. 대안적으로, 상이한 우선 순위를 갖는 패킷은 수신될 때 인터리빙되어 송신될 수 있다. 더 높은 우선 순위의 패킷을 더 일찍 송신하는 장점은, 대역폭이 감소될 때, 더 높은 우선 순위의 패킷이 더 낮은 우선 순위의 패킷보다 수신기에 자동으로 도달할 것 같다는 점이다.
일반적으로 비디오 인코딩에서, 프레임 부분의 모든 패킷은 프레임 부분을 디코딩하기 위해 이용가능해야 한다. 이 경우에, 예를 들어, 재송신 한계가 소비되기 때문에 프레임 부분의 하나의 패킷이 드롭되면, 프레임 부분의 모든 나머지 패킷은 수신기에 의해 사용될 수 없기 때문에 드롭될 수 있다.
다른 한 편으로, 비디오 정보가 기본 층 및 개선 층으로 분리될 때, 프레임 부분을 디코딩하는데 모든 기본 층 패킷만이 필요하다. 개선 층 패킷이 드롭되면, 임의의 나머지 기본 층 패킷은 여전히 송신되어야 한다.
추정은, 미디어 프레임 부분의 모든 패킷이 임계 시간 이전에 수신기에 의해 이용가능하게 될 시간에 송신기에 의해 송신될 수 있는지 간에 미디어 프레임 부분의 패킷의 송신 동안 다수의 추정을 포함할 수 있고; 상기 송신은 프레임 부분의 모든 패킷에 대한 다수의 추정에 따라 좌우된다. 따라서, 프레임 부분에 대한 몇몇 패킷이 제시간에 송신되지 않을 것 같다고 추정될 때, 프레임 부분에 대한 나머지 패킷은 송신되지 않는다.
프레임에 대한 정보 부분이 상이한 우선 순위를 갖는 정보 부분을 포함할 때, 추정은, 우선 순위를 갖는 미디어 프레임 부분의 모든 패킷이 임계 시간 이전에 수신기에 이용가능하게 될 시간에 송신기에 의해 송신될 수 있는지 간에 미디어 프레임 부분의 패킷의 송신 동안 다수의 추정을 포함할 수 있고, 동일하거나 더 낮은 우선 순위를 갖는 패킷의 송신은 상기 우선 순위를 갖는 프레임 부분의 모든 패킷에 대한 다수의 추정에 따라 좌우된다. 따라서, 상기 우선 순위를 갖는 프레임 부분에 대한 몇몇 패킷이 프레임을 디코딩하기 위해 제시간에 송신되지 않을 것이라고 추정될 때, 동일하거나 더 낮은 우선 순위에 대한 프레임 부분의 나머지 패킷은 송신되지 않는다.
도 2는 본 발명의 송신기의 일례의 관련 부분을 도시한다. 소스(110)는 임계 시간에 수신기에 이용가능할 필요가 있는 일련의 정보 부분을 제공한다. 소스는 위성 또는 지상파 방송 신호를 수신하기 위한 안테나 또는 케이블 연결부로부터 입력(111)을 포함할 수 있다. 입력(111) 이외에 또는 입력(111)의 대안에서, 소스(110)는 소스 유닛(112)을 포함할 수 있는데, 상기 소스 유닛(112)은 예를 들어 하드 드라이브, DVD 플레이어와 같은 미디어 플레이어, 또는 전자 저장 유닛을 포함할 수 있고; 또는 상기 소스 유닛은 라이브 성능을 캡처하기 위한 카메라를 포함할 수 있다.
제어기(113)는 정보 부분을 수신기로 송신하는 것을 포함하는 송신기 동작을 제어한다. 제어기는, 정보 부분이 임계 시간 이전에 수신기에 이용가능하게 될 시간에 송신기에 의해 송신될 수 있는지를 추정한다.
송신 유닛(114)은 상기 추정에 따라 정보 부분을 수신기(아래의 도 3에 도시됨)로 송신한다. 제어기는 정보 부분을 송신하기 위해 제어 신호를 송신 유닛으로 송신한다. 즉, 정보 부분은, 정보 부분이 임계 시간 이전에 수신기에 이용가능하게 될 것 같으면 단지 송신기 유닛에 의해 송신된다.
정보 부분은 높은 우선 순위를 포함할 수 있고, 낮은 우선 순위의 정보 부분 또는 소스(110)는, 제공된 정보를 높은 우선 순위의 정보 부분 및 낮은 우선 순위의 정보 부분으로 분리하기 위한 분리기(115)를 포함할 수 있다.
버퍼(116)는 정보 부분을 저장하도록 제공되고, 제어기에 의한 정보 부분의 처리를 허용한다. 예를 들어, 분리기(115)는, 버퍼에 저장되는 일렬로 인터리빙된 높은 우선 순위의 패킷 및 낮은 우선 순위의 패킷 내로 정보를 패킷화할 수 있고, 그 다음에, 제어기는 임의의 낮은 우선 순위의 패킷을 송신기로 송신하기 전에 모든 높은 우선 순위의 패킷을 송신기로 송신하기 위해 버퍼를 제어한다.
수신기 유닛(117)은 수신기(도 3의 아래 부분에 도시됨)로부터 제어 정보를 수신한다. 그러한 정보는 정보 부분, 및 도 3의 수신기의 시동 시간(버퍼 한계)을 나타내는 정보를 수신하기 위한 요청을 포함할 수 있다.
도 3은 본 발명의 예시적인 수신기의 관련 부분을 도시한다. 수신기 유닛(131)은 정보 부분을 수신한다. 제어기(132)는, 정보 부분을 버퍼링하고 임계 시간에 정보 부분을 디코더(134)로 송신하기 위해 버퍼(133)를 제어한다. 버퍼(133)는 시동 지연 시간까지 시간 길이 동안 정보 부분을 저장하고, 그 다음에 정보 부분을 디코더(134)로 통과시킨다. 예를 들어, 정보 부분이 인코딩된 비디오 정보를 포함할 때, 디코딩 시간에 디코더는 프레임 부분에 대한 정보 부분을 수신하고, 표현 시간에 디코더는 디코딩된 프레임 부분을 비디오 디스플레이(135)에 제공한다. 표현 동안, 비디오 프레임은 일정한 미리 결정된 프레임 속도로 정상적으로 디스플레이되지만, 디코딩 시간은 프레임 유형, 프레임 크기 및 프레임 복잡도에 따라 변할 수 있다.
사용자 입력(136)은 정보 부분의 수신을 개시하는데 사용될 수 있고, 시동 지연을 선택하는데 사용될 수 있다. 제어기(132)는, 정보 부분 및 수신기의 시동 지연을 수신하기 위한 요청을 도 2의 송신기로 송신하기 위해 송신 유닛(137)을 제어한다.
다음 설명은 본 발명의 예시적인 시스템을 설명한다. 계층화된 멀티미디어 스트리밍 시스템은 클라이언트-서버 모델을 이용하여 구현된다. 인코딩된 비트 스트림은, 비디오 스트림을 디코딩하는데 필요한 기본 층, 및 디코딩을 개선시키는데 사용되는 개선 층을 포함하는 수 개의 층을 갖는다. 클라이언트 상에서 동작하는 애플리케이션은 송신을 시작하기 위한 요청을 서버로 송신함으로써 스트리밍 세션을 개시한다. 관리 정보를 교환하는데 사용된 프로토콜은 RTSP(Real Time Streaming Protocol: 실시간 스트리밍 프로토콜)일 수 있다. 서버는 데이터 스트림을 클라이언트로 송신함으로써 응답한다. 데이터 스트림에 사용된 프로토콜은 RTP(실시간 프로토콜)이다. RTSP 스트림은, RTP 스트림이 UDP(사용자 데이터 프로토콜)를 이용하는 동안 전송 프로토콜로서 TCP(송신 제어 프로토콜)에 좌우된다. IP(인터넷 프로토콜)는 네트워크 층에 사용된 프로토콜이고, 링크 층은 IEEE 802.11 무선 기술을 이용한다.
도 4에서, 방송 정보 스트림은 150에서 수신되고, 분리기(151)에 의해 기본 층 스트림(152) 및 개선 층 스트림(153)으로 분리된다. 스트리밍 서버(154)는, 기본 및 개선 층 스트림을 무선 송신기(156)를 통해 전달하는 MAC(미디어 액세스) 층(155)으로 통과시킨다. 기본 및 개선 스트림은 무선 매체(157)를 통해 무선 수신기(158)로 전달된다. 그 다음에, 기본 및 개선 스트림은 클라이언트 애플리케이션(159)으로 전달되고, 상기 클라이언트 애플리케이션(159)은 상기 스트림을 디코더(160)에 제공하고, 상기 디코더(160)는 스트림을 병합하여, 161에서의 디코딩된 멀티미디어 표현을 제공하기 위해 상기 스트림을 디코딩한다.
도 5는 송신자 네트워크 스택의 부분을 도시한다. 애플리케이션 층(170)에서, 비디오 스트리밍 서버(171)는 계층화된 멀티미디어 스트림을 제공한다. 스트리밍 서버의 주 작업은 RTP 패킷을 구축하고, 스트리밍 세션(패킷 스케줄링을 포함)을 관리하기 위한 것이다. 서버는 그 동작을 비디오 파일에서 이용가능한 암시(hinting) 정보에 기초한다. 서버는 암시 정보를 판독하고, RTP 패킷의 2개의 스트림을 생성한다. 하나의 스트림은 기본 층 패킷을 포함하고, 다른 스트림은 개선 층 패킷을 포함한다. 각 패킷은 RTP 페이로드 필드를 포함하고, 기본 층 패킷의 RTP 페이로드 필드 값은 개선 층 패킷의 RTP 페이로드 필드 값과 다르다. 따라서, 기본 층 패킷은 RTP 페이로드 필드에 대한 상이한 값에 기초하여 개선 층 패킷으로부터 구별될 수 있다.
서버는 RTP 시간스탬프를 각 패킷에 또한 추가한다. RTP 시간스탬프의 값은 프레임의 모든 패킷에 대해 동일하고, 패킷이 생성되는 시간을 나타낸다.
스트리밍 서버는 UDP 소켓을 이용하여 스트림을 운영 체계 커널(173)로 전달한다. 특정 순간에, 서버는 동일한 비디오 프레임에 대응하는 모든 패킷을 운영 체계 커널로 송출한다. 먼저, 서버는 프레임에 대한 모든 기본 층(높은 우선 순위) 패킷을 송신하고, 그 다음에 서버는 프레임에 대한 모든 개선 층(낮은 우선 순위) 패킷을 송신한다. 따라서, 스트림은 기본 및 개선 층 패킷의 교대 사이클에서 송출된다. 운영 체계 커널은 스트림을 802.11 디바이스 드라이버(174)로 통과시킨다. 운영 체계 커널(173) 및 802.11 디바이스 드라이버(174)는 운영 체계 층의 부분이다. 802.11 디바이스 드라이버는, 무선 주파수(RF) 무선 송신을 위해 802.11 MAC 층(176) 및 802.11 물리적 층(177)을 포함하는 무선 송신 디바이스(175)에 스트림을 통과시킨다.
시스템 서버(전술한 바와 같이)가 기본 및 개선 층 패킷의 교대 사이클을 송신하고, 기본 및 개선 층 패킷이 RTP 페이로드 필드에서 상이한 값을 갖기 때문에, 프레임의 시작은 쉽게 검출된다. 프레임 경계를 검출하는 대안적인 방식은 RTP 시간스탬프를 이용하는 것인데, 이는 프레임의 모든 패킷에 대해 동일한 값을 갖고 인접한 프레임의 패킷과 상이한 값을 갖기 때문이다.
기본 층 패킷을 먼저 송신하는 것은, 개선 층 패킷의 손실에 대한 송신의 우선 순위를 정하는 양호한 방식이다. 기본 층 패킷이 모두 성공적으로 송신된 후에, 지연 한계 및 시스템 조건에 따라 개선 층 패킷을 드롭할 지를 결정할 수 있다.
도 6은 본 발명의 예시적인 수신기의 구조를 도시한다. 패킷은 191에서 무선 링크를 통해 802.11 네트워크 디바이스(190)에 의해 수신된다. 패킷은, 802.11 네트워크 디바이스(190)로부터 802.11 디바이스 드라이버(192) 및 운영 체계 커널(193)을 통해 통과된다. 802.11 디바이스 드라이버(192) 및 운영 체계 커널(193)은 수신기의 운영 체계 층(197)의 부분이다. 그 다음에, 패킷은 운영 체계 커널(193)로부터 클라이언트 애플리케이션 층(195)의 클라이언트 버퍼(194)로 통과된다. RTP 시간스탬프는 특정 프레임에 어떤 패킷이 속하는 지를 식별하+는데 사용된다. 프레임에 대한 디코딩 시간에, 프레임에 대한 모든 패킷은 디코더(196)에 통과된다.
도 7은 우선 순위화 패킷을 적응성으로 드롭하기 위한 본 발명의 예시적인 알고리즘을 도시한다. 가로 점선은 서버의 상이한 부분에서 수행되는 단계들을 분리시킨다. 단계(210)에서, 스트리밍 비디오 서버는 기본 층 및 개선 층 패킷을 생성하고, 단계(211)에서, 서버는 시간스탬프 시간을 갖는 프레임에 대한 모든 패킷을 시간스탬핑하고, 프레임에 대한 모든 패킷을 운영 체계 커널로 송신한다. 서버는 프레임에 대한 임의의 개선 층 패킷을 송신하기 전에 프레임에 대한 모든 기본 층 패킷을 송신한다. 단계(212)에서, 프레임에 대한 패킷은 운영 체계 커널의 소켓 버퍼링에 저장된다. 단계(213)에서, 802.11 디바이스 드라이버는 패킷 유형을 판독한다.
검출 모듈(214)은 패킷 유형과, 패킷이 새로운 비디오 프레임의 시작인지를 검출한다. 검출 모듈에서, 단계(215)에서, 드라이버는 패킷이 기본 층 패킷인지를 결정한다. 패킷이 기본 층 패킷이면, 단계(216)에서, 드라이버는 드라이버가 이미 기본 층 사이클 상태에 있는지를 결정한다. 드라이버가 기본 층 사이클 상태에 있지 않으면, 이것은 프레임의 제 1 패킷이고, 단계(217)에서, 드라이버는 기본 층 사이클 상태를 입력한다. 또한, 검출 모듈(214)에서, 단계(215)에서, 패킷이 기본 층 패킷이 아닌지가 결정되면, 패킷은 개선 층 패킷이고, 단계(218)에서, 드라이버는 개선 층 상태에 있다.
목표 시간을 추정하기 위한 목표 시간 모듈(220)에서, 새로운 프레임의 송신의 시작에, 드라이버는, 프레임의 임의의 패킷이 수신기에 도달해야 하는 최종 시간인 목표 시간을 추정한다. 목표 시간 모듈에서, 단계(221)에서, 기본 층 패킷에 대한 목표 시간, 및 개선 층 패킷에 대한 상이한 목표 시간이 계산된다. 기본 층 패킷에 대한 목표 시간은 프레임의 제 1 패킷의 RTP 시간스탬프 시간과, 기본 층 패킷에 대한 지연 허용오차와 곱해진 수신기의 버퍼링 시간의 합이다. 개선 층 패킷에 대한 목표 시간은, 프레임의 제 1 패킷의 RTP 시간스탬프 시간과, 개선 층 패킷에 대한 지연 허용오차와 곱해진 수신기의 버퍼링 시간의 합이다.
기본 층 패킷에 대한 지연 허용오차는 개선 층 패킷에 대한 지연 허용오차보다 훨씬 더 커야 한다. 이러한 지연 허용오차의 값은 일정할 수 있거나, 특정 애플리케이션, 특정 네트워크, 및 네트워크 조건에 따라 튜닝될 수 있다.
수신기의 버퍼링 시간은 본질적으로 수신기에서의 스트림에 대한 시동 지연이다. 이것은 미리 결정된 고정 양일 수 있다. 대안적으로, 버퍼링 시간은 수신기로부터 수신되어야 하는 가변 양일 수 있다. 버퍼링 시간의 송신은 RTSP(실시간 스트리밍 프로토콜)를 이용하여 이루어질 수 있는데, 상기 RTSP는 또한 스트리밍 세션을 개시하기 위해 수신기에 의해 사용된 프로토콜이다.
이 실시예에서, 동일한 기본 층 목표 시간은 모든 기본 층 패킷에 사용되고, 동일한 개선 층 목표 시간은 모든 개선 층 패킷에 의해 사용된다.
이러한 지연 허용오차의 조정은 인식된 품질을 최대화하기 위해 미디어 패킷의 송신에서 2개의 경합 목적의 균형을 이루는데 사용될 수 있다. 제 1 목적은 모든 기본 층 패킷의 성공적인 수신을 최대화하는 것이다. 제 2 목적은 개선 층 패킷의 폐기를 최소화하는 것이다.
기본 및 개선 층 패킷에 대한 목표 시간의 상기 계산은 프레임의 제 1 패킷의 RTP 시간스탬프 시간에 기초한다. 다른 대안은 디코딩 시간을 추정하기 위해 프레임 속도를 이용하는 것이다. 그러나, RTP 시간스탬프 시간 및 프레임 속도는 디코딩 시간(진정한 목표 시간)의 정확하지 않은 표시자이다. 그러나, 디코딩 시간은 RTP 시간으로부터 도출될 수 있고, 그 다음에 디코딩 시간은 프레임에 대한 목표 시간의 계산에 사용될 수 있다.
패킷을 송신할지를 결정하는 결정 모듈(230)에서, 드라이버는 각 패킷의 송신 지속기간을 추정하고, 단계(221)에서 목표 시간 모듈에서 결정된 패킷의 유형에 대한 목표 시간에 따라 패킷을 송신할지의 여부를 결정한다. 결정 모듈에서, 패킷이 기본 층 패킷이면, 단계(231)에서, 기본 층 패킷의 전송 시간이 추정된다.
패킷의 평균 전송 시간은 네트워크 조건 및 패킷의 크기에 기초하여 도출될 수 있다. 시간 가중치 평균은 네트워크 조건에 이용될 수 있다. 대안적으로, 실제 네트워크 조건은 무시될 수 있고, 최악의 경우의 조건이 사용될 수 있다. 이 경우에, 전송 시간은 고정되고, 계산될 필요가 없다. 최악의 경우의 전송 시간은 패킷의 유형에 대한 최대 재송신 한계 및 최대 패킷 크기에 기초할 수 있다. 재송신 한계는 개선 층 패킷에 대해서보다 기본 층 패킷에 대해 더 높을 수 있다. 802.11 무선 송신에서 비디오 패킷에 대한 일반적인 최대 패킷 크기는 1500바이트이다.
단계(232)에서, 드라이버는, 현재 시간과 전송 시간의 합이 기본 층 패킷에 대한 목표 시간을 초과하는지를 결정한다. 단계(232)에서의 목표 시간이 초과되면, 단계(233)에서, 기본 층 패킷은 드롭된다. 목표 시간이 동일한 프레임의 모든 기본 층 패킷에 대해 동일하기 때문에, 이것은, 모든 후속하는 기본 층 패킷이 또한 드롭된다는 것을 의미한다. 또한, 프레임의 다음의 모든 개선 층 패킷에 대한 목표 시간은 동일하고 낮아져서, 동일한 프레임의 다음의 모든 개선 층 패킷이 또한 드롭될 것이다.
단계(232)에서 그렇지 않다면, 목표 시간이 초과되지 않으면, 단계(234)에서 기본 층 패킷은 802.11 디바이스로 송신된다.
결정 모듈에서, 패킷이 개선 층 패킷이면, 단계(235)에서, 개선 층 패킷의 전송 시간이 추정된다. 기본 층 패킷에 대한 전송 시간의 추정에 대한 상기 논의는 또한 일반적으로 개선 층 패킷의 전송 시간의 추정에 적용가능하다.
단계(236)에서, 드라이버는, 현재 시간과 전송 시간의 합이 개선 층 패킷에 대한 목표 시간을 초과하는지를 결정한다. 단계(236)에서의 목표 시간이 초과되면, 단계(233)에서 개선 층 패킷은 드롭된다. 목표 시간이 동일한 프레임의 모든 개선 층 패킷에 대해 동일하기 때문에, 이것은, 다음의 모든 개선 층 패킷이 또한 드롭된다는 것을 의미한다.
단계(236)에서 그렇지 않으면, 목표 시간이 초과되지 않은 경우, 단계(234)에서, 개선 층 패킷은 802.11 디바이스로 송신된다.
단계(240)에서, 802.11 디바이스는 MAC 버퍼에서 전달될 패킷을 저장하고, 그 다음에 이 패킷을 송신한다. 어떠한 ACK도 수신되지 않으면, 패킷은, ACK가 수신되거나 재송신 한계가 소비될 때까지 재송신된다.
도 8은 도 7의 알고리즘의 결정 모듈(230)의 변형을 도시한다. 도 8의 알고리즘에서, 프레임을 송신하거나 드롭할지에 대한 결정은 프레임 유형에 따라 좌우된다. 변형된 결정 모듈(250)에서, 패킷이 기본 층 패킷이면, 단계(251)에서, 프레임 유형이 결정된다. 프레임 유형이 I-프레임이면, 단계(252)에서 허용오차는 I-프레임에 대한 기본 층 패킷에 대한 I-프레임 허용오차 값으로 설정된다. 그렇지 않은 경우, 프레임 유형이 P-프레임이면, 단계(253)에서 허용오차는 P-프레임에 대한 기본 층 패킷에 대한 P-프레임 허용오차 값으로 설정된다. 그렇지 않은 경우, 프레임 유형이 B-프레임이면, 단계(254)에서 허용오차는 B-프레임에 대한 기본 층 패킷에 대한 B-프레임 허용오차 값으로 설정된다. I 프레임에 대한 허용오차 값은 P-프레임 또는 B-프레임에 대한 허용오차 값보다 더 커야 한다. B-프레임에 대한 허용오차 값은 예를 들어 0이어야 한다.
단계(255)에서, 드라이버는, 현재 시간과 전송 시간의 합이 기본 층 패킷에 대한 허용오차와 목표 시간의 합을 초과하는지를 결정한다. 단계(255)에서 목표 시간과 허용오차의 합이 초과되면, 단계(233)에서 기본 층 패킷은 드롭된다. 단계(255)에서 그렇지 않은 경우, 목표 시간과 허용오차의 합이 초과되지 않으면, 단계(234)에서, 기본 층 패킷은 802.11 디바이스로 송신된다.
변형된 결정 모듈(250)에서, 패킷이 개선 층 패킷이면, 단계(261)에서 프레임 유형이 결정된다. 프레임 유형이 I-프레임이면, 단계(262)에서, 허용오차는 I-프레임에 대한 개선 층 패킷에 대한 I-프레임 허용오차로 설정된다. 그렇지 않은 경우, 프레임 유형이 P-프레임이면, 단계(263)에서 허용오차는 P-프레임에 대한 개선 층 패킷에 대한 P-프레임 허용오차 값으로 설정된다. 그렇지 않은 경우, 프레임 유형이 B-프레임이면, 단계(264)에서 허용오차는 B-프레임에 대한 개선 층 패킷에 대한 B-프레임 허용오차 값으로 설정된다. 다시, I 프레임에 대한 허용오차 값은 P-프레임 또는 B-프레임에 대한 허용오차 값보다 더 커야 한다. B-프레임에 대한 허용오차 값은 예를 들어 0이어야 한다.
단계(265)에서, 드라이버는, 현재 시간과 전송 시간의 합이 개선 층 패킷에 대한 허용오차와 목표 시간의 합을 초과할지를 결정한다. 단계(255)에서 목표 시간과 허용오차의 합이 초과되면, 단계(233)에서 개선 층 패킷은 드롭된다. 단계(255)에서 그렇지 않은 경우, 목표 시간과 허용오차의 합이 초과되지 않으면, 단계(234)에서, 개선 층 패킷은 802.11 디바이스로 송신된다.
본 발명은 특정한 예시적인 실시예와 관련하여 위에서 설명되었다. 당업자는 본 명세서에서 본 발명의 범주 내에서 이러한 예시적인 실시예를 변형하는 방법을 알 것이다. 본 발명은 다음 청구항에 의해서만 한정된다.
상술한 바와 같이, 본 발명은, 실시간 표현을 위해 인터넷과 같은 가변 지연 네트워크, 또는 무선 LAN(근거리 네트워크)과 같은 패킷 손실 네트워크를 통한 미디어 패킷의 송신 분야 등에 이용된다.

Claims (35)

  1. 일련의 정보 부분을 송신기에 제공하는 단계로서, 상기 정보 부분은 수신기에 이용가능하게 될 필요가 있는 임계 시간을 갖는, 제공 단계와;
    상기 정보 부분이 상기 임계 시간 이전에 상기 수신기에 이용가능하게 되도록 제시간에 상기 송신기에 의해 송신될 수 있는 지를 추정하는 단계와;
    상기 추정에 따라 상기 정보 부분을 상기 수신기로 송신하는 단계를
    포함하는, 방법.
  2. 제 1항에 있어서, 상기 정보 부분은 멀티미디어 표현(presentation)을 위한 미디어 프레임 부분의 패킷이고, 상기 표현은 다수의 프레임 부분을 포함하고, 각 프레임 부분은 다수의 높은 우선 순위의 패킷 및 다수의 낮은 우선 순위의 패킷을 포함하는, 방법.
  3. 제 2항에 있어서, 다수의 프레임 부분 각각은 디코딩 시간을 갖고, 상기 디코딩 시간 이전에 상기 프레임 부분의 모든 높은 우선 순위의 패킷은 상기 프레임 부분의 미리 결정된 표현 시간에 표현을 위해 제시간에 상기 프레임 부분을 디코딩하기 위해 상기 수신기에 이용가능할 필요가 있고, 상기 디코딩 시간 및 표현 시간은 상기 표현의 플레이 시간에 비례하는, 방법.
  4. 제 3항에 있어서, 상기 낮은 우선 순위의 패킷은, 낮은 우선 순위의 패킷의 전부가 아닌 일부가 임계 시간에 상기 수신기에 이용가능하지 않을 때 디코딩 동안 상기 프레임 부분을 개선시키는데 사용되는, 방법.
  5. 제 1항에 있어서, 상기 정보 부분을 제공하는 단계는 정보를 상이한 우선 순위를 갖는 정보 부분으로 분리하는 단계를 포함하는, 방법.
  6. 제 1항에 있어서, 상기 정보 부분을 제공하는 단계는, 미디어 프레임 부분을 제공하는 단계와, 각 프레임 부분을, 상기 프레임 부분을 디코딩하는데 필요한 높은 우선 순위의 정보 부분, 및 상기 프레임 부분을 개선시키는데만 이용되는 낮은 우선 순위의 정보 부분으로 분리하는 단계를 포함하는, 방법.
  7. 제 1항에 있어서, 상기 정보 부분은 미디어 프레임 부분의 높은 우선 순위 및 낮은 우선 순위의 패킷을 포함하고, 하나의 프레임 부분에 대한 모든 높은 우선 순위의 패킷은, 상기 프레임 부분에 대한 임의의 낮은 우선 순위의 패킷이 제공되기 전에 제공되는, 방법.
  8. 제 1항에 있어서, 상기 추정 단계는, 하나의 정보 부분이 상기 수신기에 이용가능할 필요가 있을 때 목표 시간을 결정하는 단계와, 상기 정보 부분을 송신하기 위해 추정된 전송 시간을 결정하는 단계와, 상기 정보 부분을 상기 수신기에 이용가능하게 하는 단계를 포함하고; 상기 추정 단계는, 상기 목표 시간이 상기 추정된 전송 시간과 상기 송신의 현재 시간의 합을 초과하는지를 결정하는 단계를 포함하고; 상기 정보 부분은 상기 결정에 따라 송신되는, 방법.
  9. 제 1항에 있어서, 상기 추정은 상기 수신기의 버퍼링 한계에 따라 좌우되는, 방법.
  10. 제 9항에 있어서, 상기 수신기는 상기 버퍼링 한계의 표시(indication)를 상기 송신기로 송신하는, 방법.
  11. 제 1항에 있어서, 상기 추정 단계는 송신되는 상기 정보 부분의 우선 순위에 따라 좌우되는, 방법.
  12. 제 8항에 있어서, 상기 정보 부분은 높은 우선 순위의 패킷 및 낮은 우선 순위의 패킷을 포함하고, 상기 목표 시간은 상기 낮은 우선 순위의 패킷에 대한 것보다 상기 높은 우선 순위의 패킷에 대해 더 큰 미리 결정된 지연 허용오차에 따라 좌우되어, 상기 높은 우선 순위의 패킷은 상기 낮은 우선 순위의 패킷보다 상기 수신기에 의해 더 잘 수신될 수 있게 되는, 방법.
  13. 제 1항에 있어서, 상기 정보 부분은 미디어 프레임 부분의 패킷이고, 상기 추정 단계는 상기 패킷의 미디어 프레임의 유형에 따라 좌우되는, 방법.
  14. 제 8항에 있어서,
    상기 정보 부분은 상이한 유형의 비디오 프레임의 화상 그룹에 기초하여 인코딩된 비디오 표현의 부분인데, 상기 비디오 프레임은 임의의 다른 프레임의 디코딩에 상관없이 디코딩되는 I-프레임과, 이전의 I 또는 P-프레임의 디코딩에 기초하여 디코딩되는 P-프레임과, 이전 및 후속 I 또는 P-프레임에 기초하여 디코딩되는 B-프레임을 포함하고,
    상기 목표 시간은 비디오 프레임의 유형에 따라 좌우되는, 방법.
  15. 제 1항에 있어서, 상기 정보 부분은 미디어 프레임 부분의 패킷이고, 상기 추정 단계는 송신될 상기 정보 부분의 미디어 프레임 부분의 디코딩 시간에 따라 좌우되는, 방법.
  16. 제 8항에 있어서, 상기 정보 부분은 표현의 미디어 프레임 부분의 패킷이고, 다수의 미디어 프레임 부분 각각은, 프레임 부분의 패킷이 상기 프레임 부분의 미리 결정된 표현 시간에 표현하기 위해 제시간에 디코딩하기 위한 수신기의 디코더에서 이용가능해야 하는 디코딩 시간을 갖고, 하나의 정보 부분의 목표 시간은 상기 정보 부분의 프레임 부분의 디코딩 시간에 따라 좌우되고, 프레임 부분의 디코딩 시간 및 표현 시간은 상기 표현의 플레이 시간에 비례하는, 방법.
  17. 제 1항에 있어서, 상기 추정 단계는 정보 부분에 대한 최대 크기에 따라 좌우되는, 방법.
  18. 제 1항에 있어서, 상기 송신 단계는, 재송신의 횟수에 대한 미리 결정된 한계에 도달하거나 상기 부분이 어떠한 복구할 수 없는 에러 없이 성공적으로 수신되었다는 긍정 응답이 상기 수신기로부터 수신될 때까지 정보 부분을 재송신하는 단계를 포함하고, 상기 추정 단계는 상기 재송신 한계에 따라 좌우되는, 방법.
  19. 제 1항에 있어서, 상기 추정 단계는 이전에 송신된 정보 부분의 실제 전송 시간에 따라 좌우되는, 방법.
  20. 제 1항에 있어서, 상기 정보 부분은 미디어 프레임 부분의 높은 우선 순위 및 낮은 우선 순위의 패킷이고, 하나의 프레임 부분에 대한 모든 높은 우선 순위의 패킷을 송신하는 단계는 상기 프레임 부분에 대한 낮은 우선 순위의 패킷 송신의 시작 전에 시작하는, 방법.
  21. 제 1항에 있어서, 상기 정보 부분을 송신하는 단계는, 이전의 정보 부분이 성공적으로 송신되었는지에 따라 좌우되는, 방법.
  22. 제 1항에 있어서, 상기 정보 부분은 상이한 우선 순위를 갖고, 상기 정보 부분을 송신하는 단계는, 동일하거나 더 높은 우선 순위를 갖는 이전 정보 부분이 성공적으로 송신되는지의 여부에 따라 좌우되는, 방법.
  23. 제 1항에 있어서, 상기 정보 부분은 미디어 프레임 부분의 높은 우선 순위 및 낮은 우선 순위의 패킷이고, 상기 높은 우선 순위의 패킷을 송신하는 단계는, 상기 동일한 프레임 부분에 대한 이전의 높은 우선 순위 패킷이 송신되었는지의 여부에 따라 좌우되고, 상기 낮은 우선 순위의 패킷을 송신하는 단계는, 동일한 프레임 부분에 대해 이전의 높은 우선 순위 및 이전의 낮은 우선 순위의 패킷이 송신되었는지의 여부에 따라 좌우되는, 방법.
  24. 제 1항에 있어서, 상기 방법은 상기 정보 부분을 상기 수신기로 송신하는 것을 개시하기 위한 요청을 상기 수신기로부터 수신하는 단계를 더 포함하는, 방법.
  25. 제 2항에 있어서, 상기 추정 단계는, 미디어 프레임 부분의 모든 패킷이 상기 임계 시간 이전에 상기 수신기에 이용가능하게 되도록 제시간에 상기 송신기에 의해 송신될 수 있는지에 대해 미디어 프레임 부분의 패킷의 송신 동안 다수의 추정을 포함하고, 상기 송신 단계는 상기 프레임 부분의 모든 패킷에 대한 다수의 추정에 따라 좌우되어, 프레임 부분에 대한 몇몇 패킷이 제시간에 송신되지 않을 것이라 추정될 때, 상기 프레임 부분에 대한 나머지 패킷은 송신되지 않을 것인, 방법.
  26. 제 2항에 있어서, 프레임에 대한 정보 부분은 상이한 우선 순위를 갖는 정보 부분을 포함하고, 상기 추정 단계는, 우선 순위의 미디어 프레임 부분의 모든 패킷이 임계 시간 이전에 수신기에 이용가능하게 되도록 제시간에 상기 송신기에 의해 송신될 수 있는지에 대해 미디어 프레임 부분의 패킷의 송신 동안 다수의 추정을 포함하고, 상기 동일하거나 더 낮은 우선 순위의 패킷의 송신은 상기 우선 순위의 프레임 부분의 모든 패킷에 대한 다수의 추정에 따라 좌우되어, 상기 우선 순위의 프레임 부분에 대한 몇몇 패킷이 제시간에 송신되지 않을 것이라 추정될 때, 상기 동일하거나 더 낮은 우선 순위에 대한 프레임 부분에 대한 나머지 패킷은 송신되지 않는, 방법.
  27. 가변 조건을 갖는 네트워크를 통한 송신을 위해 상연을 위한 미디어 스트림을 상이한 우선 순위를 갖는 다수의 미디어 스트림으로 분리시키는 단계로서, 상기 미디어 스트림은 미리 결정된 스케줄을 갖는, 분리 단계와,
    상기 인식된 상기 상연의 품질이 모든 다수의 미디어 스트림을 송신하려는 시도에 비례하여 증가하도록, 상기 우선 순위 및 네트워크 조건에 따라 다수의 미디어 스트림의 부분을 송신할지를 결정하는 단계와,
    상기 결정에 따라 상기 다수의 미디어 스트림의 부분을 송신하는 단계를
    포함하는, 방법.
  28. 제 27항에 있어서, 상기 네트워크는 무선 네트워크이고, 패킷은 순차적으로 송신되고, 각 패킷은, 긍정 응답(acknowledgement)이 수신되거나 재송신 한계에 도달할 때까지 송신 및 재송신되는, 방법.
  29. 정보 부분을 수신기로 송신하기 위한 송신기로서,
    임계 시간에 수신기에 이용가능할 필요가 있는 일련의 정보 부분을 제공하는 수단과,
    상기 정보 부분이 상기 임계 시간 이전에 상기 수신기에 이용가능하게 되도록 제시간에 상기 송신기에 의해 송신될 수 있는지를 추정하는 수단과,
    상기 추정에 따라 상기 정보 부분을 상기 수신기로 송신하는 송신 장치를
    포함하는, 정보 부분을 수신기로 송신하기 위한 송신기.
  30. 제 29항에 있어서,
    상기 송신기는 상기 수신기로부터 버퍼링 크기의 표시를 수신하는 수단을 더 포함하고,
    상기 추정 수단은 상기 수신기에서 버퍼링 크기의 표시에 따라 좌우되는, 정보 부분을 수신기로 송신하기 위한 송신기.
  31. 제 29항에 있어서,
    상기 송신기는 상기 정보 부분의 디코딩 시간을 결정하는 수단을 더 포함하고,
    상기 추정 수단은 상기 정보 부분의 디코딩 시간에 따라 좌우되는, 정보 부분을 수신기로 송신하기 위한 송신기.
  32. 제 29항에 있어서,
    정보 부분을 제공하는 수단은, 정보를 상이한 우선 순위를 갖는 정보 부분으로 분리하는 수단을 포함하고,
    상기 추정 수단은 상기 정보 부분의 우선 순위에 따라 좌우되는, 정보 부분을 수신기로 송신하기 위한 송신기.
  33. 임계 시간에 상기 수신기에 이용가능해야 하는 정보 부분을 송신하도록 송신기에게 요청하는 수단과,
    상기 임계 시간 이전에 도달하는 정보 부분을 버퍼링하는 수단과,
    상기 버퍼링 크기의 표시를 상기 송신기로 송신하는 수단을
    포함하는, 수신기.
  34. 제 33항에 있어서,
    상기 정보 부분은 인코딩된 미디어 프레임에 대한 패킷이고, 다수의 미디어 프레임 각각은 다수의 패킷을 포함하고,
    상기 수신기는 상기 패킷을 저장하는 버퍼와, 임계 시간에 상기 패킷을 디코딩하는 수단을 더 포함하고,
    프레임에 대한 모든 패킷은 동일한 시간스탬프를 포함하고,
    프레임에 대한 모든 패킷은 동일한 시간스탬프에 기초하여 식별되고, 상기 디코더로 함께 전달되는, 수신기.
  35. 제 33항에 있어서,
    상기 정보 부분은 인코딩된 미디어 프레임에 대한 패킷이고, 다수의 미디어 프레임 각각은 다수의 패킷을 포함하고;
    상기 수신기는 상기 패킷을 저장하는 버퍼와, 상기 임계 시간에 상기 패킷을 디코딩하는 수단을 더 포함하고,
    상기 패킷은 높은 우선 순위의 패킷 및 낮은 우선 순위의 패킷을 포함하고,
    모든 패킷은 패킷의 우선 순위의 표시를 포함하고,
    프레임에 대한 높은 우선 순위의 패킷은, 상기 프레임에 대한 낮은 우선 순위의 패킷이 수신되기 전에 수신되고,
    프레임에 대한 모든 패킷은 패킷 우선 순위의 표시에서의 변화에 의해 식별되고, 상기 디코더로 함께 전달되는, 수신기.
KR10-2005-7000809A 2002-07-18 2003-07-18 우선 순위화 송신 패킷의 적응성 드롭핑 Abandoned KR20050023429A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2005-7000809A KR20050023429A (ko) 2002-07-18 2003-07-18 우선 순위화 송신 패킷의 적응성 드롭핑

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60/396,814 2002-07-18
KR10-2005-7000809A KR20050023429A (ko) 2002-07-18 2003-07-18 우선 순위화 송신 패킷의 적응성 드롭핑

Publications (1)

Publication Number Publication Date
KR20050023429A true KR20050023429A (ko) 2005-03-09

Family

ID=41784591

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2005-7000809A Abandoned KR20050023429A (ko) 2002-07-18 2003-07-18 우선 순위화 송신 패킷의 적응성 드롭핑

Country Status (1)

Country Link
KR (1) KR20050023429A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101418762B1 (ko) * 2008-11-07 2014-07-11 아바야 인코포레이티드 원격통신 네트워크들에서 우선순위 상태의 자동적인 검출 및 재-구성

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101418762B1 (ko) * 2008-11-07 2014-07-11 아바야 인코포레이티드 원격통신 네트워크들에서 우선순위 상태의 자동적인 검출 및 재-구성

Similar Documents

Publication Publication Date Title
US20060164987A1 (en) Adaptive dropping of prioritized transmission packets
EP1130839B1 (en) Method and apparatus for retransmitting video data frames with priority levels
EP2532170B1 (en) Data flow control method and apparatus
US9571404B2 (en) Method and system for prioritizing network packets
US9515941B2 (en) Dynamic determination of transmission parameters based on packet priority and network conditions
US9503492B2 (en) Method and apparatus for improving quality of multimedia streaming service
US20050213502A1 (en) Method and system for controlling operation of a network, such as a WLAN, related network and computer program product therefor
US9544602B2 (en) Wireless video transmission system
US8345740B2 (en) System, transmitter, receiver, method and software for transmitting and receiving ordered sets of video frames
CN109155707B (zh) 在多播网络中请求数据重传
CN108833930B (zh) 直播数据传输控制方法、装置、直播设备及存储介质
Balk et al. Adaptive MPEG-4 video streaming with bandwidth estimation
US20110310957A1 (en) Encoding of a video frame for transmission to a plurality of clients
Sutinen et al. Towards ubiquitous video services through scalable video coding and cross-layer optimization
KR20050023429A (ko) 우선 순위화 송신 패킷의 적응성 드롭핑
Tirouvengadam et al. Hybrid Mode Radio Link Control for Efficient Video Transmission over 4GLTE Network
Kliazovich et al. Context-aware receiver-driven retransmission control in wireless local area networks
Nelwamondo Adaptive Video Streaming Over IEEE 802.11 Wireless Networks

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20050117

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20080715

Comment text: Request for Examination of Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20100319

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20100818

NORF Unpaid initial registration fee
PC1904 Unpaid initial registration fee