KR101177454B1 - 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및클라이언트와, 영상 데이터의 전송에 따른 에러 복원결정방법 - Google Patents

영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및클라이언트와, 영상 데이터의 전송에 따른 에러 복원결정방법 Download PDF

Info

Publication number
KR101177454B1
KR101177454B1 KR1020070021146A KR20070021146A KR101177454B1 KR 101177454 B1 KR101177454 B1 KR 101177454B1 KR 1020070021146 A KR1020070021146 A KR 1020070021146A KR 20070021146 A KR20070021146 A KR 20070021146A KR 101177454 B1 KR101177454 B1 KR 101177454B1
Authority
KR
South Korea
Prior art keywords
image data
mode
client
fec
error recovery
Prior art date
Application number
KR1020070021146A
Other languages
English (en)
Other versions
KR20080080872A (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 KR1020070021146A priority Critical patent/KR101177454B1/ko
Priority to US11/941,198 priority patent/US8127196B2/en
Publication of KR20080080872A publication Critical patent/KR20080080872A/ko
Application granted granted Critical
Publication of KR101177454B1 publication Critical patent/KR101177454B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1825Adaptation of specific ARQ protocol parameters according to transmission conditions

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Multimedia (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및 클라이언트와 이에 대한 방법에 관한 것이다. 이 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버는 영상 데이터에 에러 정정을 위한 잉여 비트를 추가하여, 잉여 비트가 추가된 영상 데이터를 출력하는 FEC(Forward Error Correction) 모드 수행부; 상기 영상 데이터를 수신하는 클라이언트로부터 데이터 수신에 따른 응답신호를 제공받아서, 상기 영상 데이터를 출력하는 ARQ(Automatic Repeat Request) 모드 수행부; 상기 클라이언트의 상기 영상 데이터에 대한 수신 버퍼링 능력에 따라, 상기 영상 데이터를 FEC 모드 및 ARQ 모드 중 어느 하나의 모드에 의해 에러 복원작업이 수행되도록 모드를 결정하는 모드 결정부; 및 상기 FEC 모드 수행부 또는 상기 ARQ 모드 수행부에 의해 출력된 영상 데이터를 상기 클라이언트로 전송하는 인터페이스부를 구비함으로써, 제한된 밴드 폭을 갖는 무선망에서 불필요한 Redundancy data를 줄이고 에러 복구율을 높일 수 있도록 한다.

Description

영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및 클라이언트와, 영상 데이터의 전송에 따른 에러 복원 결정방법{Server and client for determining error restoration type according to transmission image data, thereby method}
도 1은 본 발명에 의한 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및 클라이언트를 설명하기 위한 일 실시예의 블록도이다.
도 2는 도 1에 도시된 서버와 클라이언트 사이의 데이터 전송을 설명하기 위한 참고도이다.
도 3은 본 발명에 의한 영상 데이터의 전송에 따른 에러 복원 결정방법을 설명하기 위한 일 실시예의 플로차트이다.
<도면의 주요 부호에 대한 간단한 설명>
100: 서버 110: 모드 결정부
120: FEC 모드 수행부 130: ARQ 모드 수행부
140: 제1 인터페이스부 200: 클라이언트
210: 제2 인터페이스부 220: 버퍼링 능력 수집부
본 발명은 수신측의 버퍼 상태에 따라 ARQ와 FEC를 Mode selection 하는 장치 및 방법에 관한 것이다.
데이터 전송의 신뢰도를 보장하는 방법으로 크게 두 가지 방법이 사용되고 있다. ARQ(automatic repeat request) 방식과 FEC(forward error correct) 방식이 그 두 가지이다.
먼저 ARQ 방식을 살펴보면, ARQ 방식에서 클라이언트는 서버가 전송한 데이터에 대하여 데이터를 정상적으로 수신하였음을 피드백(feed-back)하는 확인(acknowledgement : ACK) 메시지를 서버에 전송한다. 서버는 확인 메시지를 수신한 데이터 패킷에 대해서는 재전송하지 않고, 확인 메시지를 수신하지 못한 데이터 패킷은 별다른 재전송 요구가 없어도 클라이언트에 재전송한다. 확인 메시지를 수신하지 못한 데이터 패킷은 모두 재전송함으로써 클라이언트가 모든 데이터 패킷을 정상적으로 수신하게 된다. TCP(transmission control protocol)에 따라 데이터를 전송할 때 사용되는 방식이다.
FEC 방식은 클라이언트가 확인 메시지를 전송하지 않는 방식이다. 클라이언트가 데이터를 정상적으로 수신하였는지에 대한 정보를 서버에 전송하지 않는다. 다만, 데이터 전송 도중에 발생할 수 있는 전송 오류를 정정하기 위해 서버는 원본 데이터에 오류 정정을 위한 소정의 리던던시(redundancy) 데이터를 부가하여 전송한다. 클라이언트의 확인 메시지와 같은 별도의 피드백없이 데이터 전송의 신뢰성을 보장하기 위해 데이터 전송과 동시에 오류 정정 방법을 제공하는 것이다. UDP(user datagram protocol)에 따라 데이터를 전송할 때 사용되는 방식이다.
Wibro/Wireless LAN 등의 무선 네트워크가 발전함에 따라 portable consumer devie의 사용이 증가하고 있다. 그러나 무선 망에서의 Video data의 전송에 있어 channel condition, packet erasure, multicast와 broadcast에 있어 data 재전송의 제약 및 여러 제약 사항으로 방해받는다. 이러한 문제의 해결에 있어 기존의 이동 단말기에서의 Streaming service 에어정정 기법으로 FEC (Forward Error Correction)을 광범위하게 사용하고 있다. Streaming에 있어 FEC 기법은 매우 효과적으로 에러정정을 할 수 있는 장점에 비해 에러 정정을 위한 Redundancy data의 양이 많아 네트워크상의 부하를 늘리는데 있다. 즉, FEC 방식은 불필요한 Redundancy data를 보내기 때문에 network에 과부하를 유발시켜 비효율적이며, 특히, 제한적 Bandwith를 갖는 무선망에서 이러한 불필요한 리던던시 데이터들의 증가는 심각한 network 부담을 유발시킬 수 있다.
한편, ARQ 방식은 데이터 전송의 신뢰성을 보장할 수 있다. 그러나, 클라이언트로부터 피드백을 수신하고 이에 따라 데이터 패킷을 재전송해야 하므로, 멀티캐스팅과 같은 일대다 데이터 통신에는 적합하지 않다. 특히, 스트리밍 서비스와 같은 실시간 서비스를 멀티캐스팅을 통해 제공할 경우에는 데이터를 재전송하여도 시간이 경과되어 데이터가 쓸모없게 되는 경우가 발생할 수 있다.
또한, 두 가지 방식을 혼합한 방식을 사용하는데 RTP(real-time transport protocol)을 이용한 데이터 통신이 그 예이다. 서버는 복수의 클라이언트들에 데이터를 멀티캐스팅한다. 데이터를 수신한 클라이언트들은 RTP 패킷의 헤더에 포함되 어 있는 'sequence number', 'timestamp' 등의 정보를 참조하여 정상적으로 수신하지 못한 데이터 패킷을 검출한다. 정상적으로 수신하지 못한 데이터 패킷이 있으면, 패킷 손실(packet loss), 지터(jitter) 등의 정보가 포함되어 있는 RTCP(real-time transport control protocol) 또는 RTSP(real-time streaming protocol) 패킷을 서버에 전송한다. RTCP 또는 RTSP 패킷은 주기적으로 전송할 수도 있고, 필요에 따라 패킷 손실이 발생하는 즉시 전송하도록 할 수도 있다.
서버가 클라이언트들로부터 수신 환경에 대한 정보를 수신하는 피드백이 있다는 점에서 ARQ 방식이 도입되었으나, 데이터의 재전송은 수행되지 않는다. 따라서, 서버는 데이터를 전송할 때 원본 데이터에 리던던시 데이터를 부가하여 전송함으로써 FEC가 가능하도록 한다. RTCP 또는 RTSP 패킷을 수신한 서버는 수신한 패킷에 포함되어 있는 패킷 손실, 지터 등의 수신 환경에 대한 정보에 기초하여 데이터 전송의 QoS를 조절하여 전송하게 된다. 수신 환경에 따라 부가되는 리던던시 데이터의 크기를 조절하는 방식으로 데이터 전송의 QoS를 조절하게 된다.
그런데, Streaming 서비스에 있어 품질은 network의 상태에 민감한 영향을 받는다. 때문에 FEC등과 같은 에러 정정법을 활용하여 영상 품질을 유지한다. 여기서 망의 상태가 비교적 좋은 상태라고 가정할 때 에러의 발생 빈도수는 낮을 것이다. 하지만 에러 빈도수가 낮을 경우 FEC 방식의 Redundancy data는 망의 입장에서 보면 상당한 양의 불필요한 데이터이다. Wibro등의 무선 망에서 IP Moblie TV와 같은 Streaming 서비스를 할 경우 이러한 더미 데이터는 서비스의 품질저하 뿐만 아니라 Network의 비 효율적인 사용의 결과를 초래하게 된다. 이를 해결하기 위해, 전술한 바와 같이, 두 방식을 혼합하는 방식도 사용되지만, 네트워크 전송 상태에 따라서 FEC 방식 또는 ARQ 방식을 선택하도록 하기 때문에 클라이언트 측의 데이터 처리 능력에 따른 에러 정정기법이 적용되지 않고 있다는 문제점이 있다.
본 발명이 이루고자 하는 기술적 과제는 클라이언트의 버퍼링 상태를 참조하여 FEC와 ARQ 두 기법 사이를 Mode 선택하는 방법을 제안함으로써, 제한된 밴드 폭을 갖는 무선망에서 불필요한 Redundancy data를 줄이고 에러 복구율을 높일 수 있고, 스트리밍 서비스를 원활하게 수행할 수 있도록 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및 클라이언트와 이에 대한 방법을 제공하는데 있다.
상기의 과제를 이루기 위해, 본 발명에 의한 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버는 영상 데이터에 에러 정정을 위한 잉여 비트를 추가하여, 잉여 비트가 추가된 영상 데이터를 출력하는 FEC(Forward Error Correction) 모드 수행부; 상기 영상 데이터를 수신하는 클라이언트로부터 데이터 수신에 따른 응답신호를 제공받아서, 상기 영상 데이터를 출력하는 ARQ(Automatic Repeat Request) 모드 수행부; 상기 디바이스의 상기 영상 데이터에 대한 수신 버퍼링 능력에 따라, 상기 영상 데이터를 FEC 모드 및 ARQ 모드 중 어느 하나의 모드에 의해 에러 복원작업이 수행되도록 모드를 결정하는 모드 결정부; 및 상기 FEC 모드 수행부 또는 상기 ARQ 모드 수행부에 의해 출력된 영상 데이터를 상기 클라이언트로 전 송하는 인터페이스부를 구비하는 것을 특징으로 한다.
상기의 과제를 이루기 위해, 본 발명에 의한 영상 데이터의 전송에 따른 에러 복원 결정을 위한 클라이언트는 영상 데이터의 수신 버퍼링 능력에 대한 정보를 수집하는 버퍼링 능력 수집부; 및 상기 수집된 수신 버퍼링 능력에 대한 정보를 서버로 전송하고, 상기 서버로부터 상기 영상 데이터를 수신하는 제2 인터페이스부를 구비하는 것을 특징으로 한다.
상기의 다른 과제를 이루기 위해, 본 발명에 의한 영상 데이터의 전송에 따른 에러 복원 결정방법은 영상 데이터를 수신하는 클라이언트의 상기 영상 데이터에 대한 수신 버퍼링 능력에 따라, 상기 영상 데이터에 에러 정정을 위한 잉여 비트를 추가하여, 잉여 비트가 추가된 영상 데이터를 출력하는 FEC(Forward Error Correction) 모드 및 상기 클라이언트로부터 데이터 수신에 따른 응답신호를 제공받아서, 상기 영상 데이터를 출력하는 ARQ(Automatic Repeat Request) 모드 중 어느 하나의 모드에 의해 에러 복원작업이 수행되도록 모드를 결정하는 단계; 상기 결정된 모드에 따라, 상기 영상 데이터에 대해 상기 FEC 모드 또는 상기 ARQ 모드를 수행하는 단계; 및 상기 FEC 모드의 수행 또는 상기 ARQ 모드의 수행에 따라 출력된 영상 데이터를 상기 클라이언트로 전송하는 단계를 구비하는 것을 특징으로 한다.
이하, 본 발명에 의한 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버를 첨부된 도면을 참조하여 상세히 설명한다.
도 1은 본 발명에 의한 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및 클라이언트를 설명하기 위한 일 실시예의 블록도이다.
클라이언트(200)는 수신 버퍼링 능력에 대한 정보를 서버(100)로 전송하는 장치로서, 제2 인터페이스부(210) 및 버퍼링 능력 수집부(220)을 포함한다.
먼저, 클라이언트(200)의 버퍼링 능력 수집부(220)는 클라이언트 자신의 영상 데이터의 수신 버퍼링 능력에 대한 정보를 수집하고, 수집한 결과를 제2 인터페이스부(210)로 출력한다. 수신 버퍼링 능력은 스트리밍 서비스를 위해 영상 데이터를 일시 저장하는데 얼마만큼의 메모리 용량을 사용할 수 있는가를 나타내는 영상 데이터의 일시 저장능력을 의미한다. 버퍼링 능력 수집부(220)는 수신 버퍼링 능력에 대한 정보를 주기적으로 수집하는 것을 특징으로 한다.
제2 인터페이스부(210)는 버퍼링 능력 수집부(220)에서 수집된 수신 버퍼링 능력에 대한 정보를 서버(100)로 전송한다. 이때, 제2 인터페이스부(210)는 수신 버퍼링 능력에 대한 정보를 RTCP(RTP control protocol) 또는 RTSP(real-time streaming protocol) 중 어느 하나의 프로토콜을 사용하여, 서버(100)로 전송하는 것을 특징으로 한다.
클라이언트(200)로부터 영상 데이터에 대한 버퍼링 능력에 대한 정보를 수신한 서버(100)는 영상 데이터에 대한 수신 버퍼링 능력에 따라, 영상 데이터를 FEC 모드 및 ARQ 모드 중 어느 하나의 모드에 의해 에러 복원작업이 수행되도록 한다. 이를 위해, 서버(100)는 영상 데이터를 클라이언트(200)로 전송하는 장치로서, 모드 결정부(110), FEC 모드 수행부(120), ARQ 모드 수행부(130) 및 제1 인터페이스부(140)을 포함한다.
모드 결정부(110)는 클라이언트(200)의 영상 데이터에 대한 수신 버퍼링 능력에 따라, 영상 데이터가 FEC 모드 및 ARQ 모드 중 어느 하나의 모드에 의해 에러 복원작업이 수행되도록 모드를 결정하고, 결정한 결과를 FEC 모드 수행부(120) 또는 ARQ 모드 수행부(130)로 출력한다.
클라이언트(200)의 수신 버퍼링 능력은 스트리밍 서비스를 위해 영상 데이터를 일시 저장하는데 얼마만큼의 메모리 용량을 사용할 수 있는가를 나타내는 영상 데이터의 일시 저장능력을 의미한다. 모드 결정부(110)는 이러한 수신 버퍼링 능력을 클라이언트(200)로부터 제1 인터페이스부(140)를 통해 제공받는다.
모드 결정부(110)는 이러한 수신 버퍼링 능력에 대한 정보를 주기적으로 제공받는다. 특히, 모드 결정부(110)는 수신 버퍼링 능력에 대한 정보를 RTCP(RTP control protocol) 또는 RTSP(real-time streaming protocol) 중 어느 하나의 프로토콜을 사용하여 제공받는다.
여기서, RTCP 프로토콜은 인터넷을 통한 영상이나 음성의 스트리밍용 프로토콜인 RTP(real-time transport protocol)를 제어하기 위한 프로토콜을 의미한다. 한편, RTSP 프로토콜은 실시간으로 음성이나 동화를 송수신하기 위한 통신 규약으로, RTP(real-time transport protocol)와는 달리 응용 계층에서 동작하는 특징이 있다. RTCP 프로토콜 또는 RTSP 프로토콜에 의한 전송 패킷에는 패킷 손실, 지터(JITTER), 전계 강도 등의 통신 환경에 대한 정보가 포함될 수 있다.
모드 결정부(110)는 수신 버퍼링 능력이 소정 비율 이상인 경우에는 ARQ 모드에 의해 에러 복원작업이 수행되도록 결정하고, 결정한 결과를 ARQ 모드 수행 부(130)로 출력한다. 또한, 모드 결정부(110)는 수신 버퍼링 능력이 소정 비율 미만인 경우에는 FEC 모드에 의해 에러 복원작업이 수행되도록 결정하고, 결정한 결과를 FEC 모드 결정부(120)로 출력한다. 여기서, 소정 비율은 버퍼링 상태가 양호하다고 판단되는 임계치에 해당한다.
예를 들어, 최대 버퍼링 능력의 80[%] 이상을 버퍼링 상태가 양호한 정도라고 가정하면, 모드 결정부(110)는 수신 버퍼링 능력이 80[%] 이상인 경우에는 ARQ 모드에 의해 에러 복원작업이 수행되도록 결정하고, 수신 버퍼링 능력이 80[%] 미만인 경우에는 FEC 모드에 의해 에러 복원작업이 수행되도록 결정한다. 클라이언트(200)의 수신 버퍼링 능력이 양호하다면 패킷 로스 및 에러 발생 빈도가 낮다는 것을 의미한다. 이와 같은 경우에는 현재 버퍼링된 데이터의 재생 시간이 ARQ 모드에 의해 에러가 발생한 영상 데이터의 재전송에 소요되는 시간보다 크기 때문에 ARQ 모드에 의해 에러를 정정하는 것이 적절하다.
그러나, 반대로 클라이언트(200)의 수신 버퍼링 능력이 양호하지 않다면, FEC 모드에 의해 에러 복원작업이 수행되도록 해야 한다. 왜냐하면, 이때에는 ARQ 모드에 의해 에러 정정을 할 경우 빈번한 영상 데이터의 재전송에 따른 네트워크의 과부하가 초래되고, 현재 버퍼링된 데이터의 재생 시간이 영상 데이터의 재전송에 소요되는 시간보다 작기 때문에 ARQ 모드에 의해 에러를 정정하는 것이 적합하지 않기 때문이다.
모드 결정부(110)의 FEC 모드 결정 결과에 응답하여, FEC 모드 수행부(120)는 클라이언트(200)로 전송할 영상 데이터에 에러 정정을 위한 잉여(Redundancy) 비트를 추가하여, 잉여 비트가 추가된 영상 데이터를 인터페이스부(140)로 출력한다. 특히, FEC 모드 수행부(120)는 영상 데이터의 전송을 위한 통신 상태 및 에러 발생 빈도에 따라, 잉여 비트의 크기를 가변하여 추가하는 것을 특징으로 한다. 통신 상태에 따른 잉여 비트의 가변 방식은 종래의 일반적인 기술에 해당하므로, 상세한 설명은 생략한다.
전술한 바와 같이, FEC 모드 수행부(120)는 클라이언트(200)의 수신 버퍼링 능력이 양호하지 않을 때에 에러 정정을 위한 방식으로 사용된다. 따라서, FEC 모드 수행부(120)는 에러가 발생된 영상 데이터의 재전송을 하는 것이 아니라, 미리 에러 정정을 위한 잉여비트를 영상 데이터에 추가하여 클라이언트(200)로 출력한다.
한편, 모드 결정부(110)의 ARQ 모드 결정 결과에 응답하여, ARQ 모드 수행부(130)는 영상 데이터를 수신하는 클라이언트(200)로부터 데이터 수신에 따른 응답신호를 제공받아서, 재차 영상 데이터를 제1 인터페이스부(140)로 출력한다.
예를 들어, 클라이언트(200)로부터 영상 데이터를 수신하는데 있어서 에러가 없었음을 나타내는 응답신호 ACK를 제1 인터페이스부(140)을 통해 수신하였다면, ARQ 모드 수행부(130)는 동일한 영상 데이터를 재차 전송하지 않는다.
그러나, 클라이언트(200)로부터 영상 데이터를 수신하는데 있어서 에러가 발생했음을 나타내는 응답신호 NAK를 제1 인터페이스부(140)을 통해 수신하였다면, ARQ 모드 수행부(130)는 동일한 영상 데이터를 재차 제1 인터페이스부(140)로 출력한다.
제1 인터페이스부(140)는 클라이언트(200)로부터 제공되는 수신 버퍼링 능력에 대한 정보를 수신하여 모드 결정부(110)으로 출력한다. 또한, ARQ 모드 상태에서, 인터페이스부(140)는 클라이언트(200)로부터 제공되는 ACK 신호 또는 NAK 신호를 수신하여, ARQ 모드 수행부(130)로 출력한다.
또한, 제1 인터페이스부(140)는 FEC 모드 수행부(120) 또는 ARQ 모드 수행부(130)에 의해 출력된 영상 데이터를 클라이언트(200)로 전송한다.
클라이언트(200)의 제2 인터페이스부(210)는 서버(100)로부터 영상 데이터를 수신한다. 클라이언트(200)는 서버(100)로부터 전송된 영상 데이터를 디코딩하여 재생한다.
도 2는 도 1에 도시된 서버와 클라이언트 사이의 데이터 전송을 설명하기 위한 참고도이다. 도 2에 도시된 바와 같이, 버퍼링 능력이 양호한 상태에서는 ARQ 모드로 동작함으로써, 클라이언트(200)로부터 영상 데이터의 전송에 따른 에러 유무에 대한 응답신호(ACK, NAK)를 수신하여, 이에 따라 에러 없는 영상 데이터를 재전송한다. 그러나, 버퍼링 능력이 양호하지 않은 상태에서는 모드 전환을 통해 FEC 모드로 동작함으로써, 영상 데이터에 에러 정정을 위한 잉여 비트를 추가하여 전송한다.
이하, 본 발명에 의한 영상 데이터의 전송에 따른 에러 복원 결정방법을 첨부된 도면을 참조하여 상세히 설명한다.
도 3은 본 발명에 의한 영상 데이터의 전송에 따른 에러 복원 결정방법을 설명하기 위한 일 실시예의 플로차트이다.
먼저, 영상 데이터를 수신하는 클라이언트의 영상 데이터에 대한 수신 버퍼링 능력에 따라, FEC(Forward Error Correction) 모드 및 ARQ(Automatic Repeat Request) 모드 중 어느 하나의 모드에 의해 에러 복원작업이 수행되도록 모드를 결정한다(제300 단계). 클라이언트의 수신 버퍼링 능력은 스트리밍 서비스를 위해 영상 데이터를 일시 저장하는데 얼마만큼의 메모리 용량을 사용할 수 있는가를 나타내는 영상 데이터의 일시 저장능력을 의미한다.
이러한 수신 버퍼링 능력에 대한 정보는 클라이언트로부터 주기적으로 제공된다. 특히, 수신 버퍼링 능력에 대한 정보는 RTCP(RTP control protocol) 또는 RTSP(real-time streaming protocol) 중 어느 하나의 프로토콜을 사용하여 제공받는다. 수신 버퍼링 능력이 소정 비율 이상인 경우에는 ARQ 모드에 의해 에러 복원작업이 수행되도록 결정한다. 또한, 수신 버퍼링 능력이 소정 비율 미만인 경우에는 FEC 모드에 의해 에러 복원작업이 수행되도록 결정한다.
여기서, 소정 비율은 버퍼링 상태가 양호하다고 판단되는 임계치에 해당한다. 클라이언트의 수신 버퍼링 능력이 양호하다면 패킷 로스 및 에러 발생 빈도가 낮다는 것을 의미한다. 이와 같은 경우에는 현재 버퍼링된 데이터의 재생 시간이 ARQ 모드에 의해 에러가 발생한 영상 데이터의 재전송에 소요되는 시간보다 크기 때문에 ARQ 모드에 의해 에러를 정정하는 것이 적절하다. 그러나, 반대로 클라이언트의 수신 버퍼링 능력이 양호하지 않다면, FEC 모드에 의해 에러 복원작업이 수행되도록 해야 한다.
제300 단계 후에, 결정된 모드에 따라, 영상 데이터에 대해 FEC 모드 또는 ARQ 모드를 수행한다(제302 단계).
FEC 모드는 클라이언트로 전송할 영상 데이터에 에러 정정을 위한 잉여(Redundancy) 비트를 추가하여, 잉여 비트가 추가된 영상 데이터를 출력하는 모드이다. 특히, 영상 데이터의 전송을 위한 통신 상태 및 에러 발생 빈도에 따라, 잉여 비트의 크기를 가변하여 추가하는 것을 특징으로 한다. FEC 모드는 클라이언트의 수신 버퍼링 능력이 양호하지 않을 때에 에러 정정을 위한 방식으로 사용된다.
한편, ARQ 모드는 영상 데이터를 수신하는 클라이언트로부터 데이터 수신에 따른 응답신호를 제공받아서, 재차 영상 데이터를 출력하는 모드이다. 예를 들어, 클라이언트로부터 영상 데이터를 수신하는데 있어서 에러가 없었음을 나타내는 응답신호를 수신하였다면, 동일한 영상 데이터를 재차 전송하지 않지만, 클라이언트로부터 영상 데이터를 수신하는데 있어서 에러가 발생했음을 나타내는 응답신호를 수신하였다면, 동일한 영상 데이터를 재차 출력한다.
제302 단계 후에, FEC 모드의 수행 또는 ARQ 모드의 수행에 따라 출력된 영상 데이터를 클라이언트로 전송한다(제304 단계). 클라이언트는 수신된 영상 데이터를 디코딩하여 재생한다.
한편, 상술한 본 발명의 영상 데이터의 전송에 따른 에러 복원 결정방법은 컴퓨터에서 읽을 수 있는 코드/명령들(instructions)/프로그램으로 구현될 수 있다. 즉, 영상 데이터를 수신하는 클라이언트의 상기 영상 데이터에 대한 수신 버퍼링 능력에 따라, 상기 영상 데이터에 에러 정정을 위한 잉여 비트를 추가하여, 잉 여 비트가 추가된 영상 데이터를 출력하는 FEC(Forward Error Correction) 모드 및 상기 클라이언트로부터 데이터 수신에 따른 응답신호를 제공받아서, 상기 영상 데이터를 출력하는 ARQ(Automatic Repeat Request) 모드 중 어느 하나의 모드에 의해 에러 복원작업이 수행되도록 모드를 결정하는 단계; 상기 결정된 모드에 따라, 상기 영상 데이터에 대해 상기 FEC 모드 또는 상기 ARQ 모드를 수행하는 단계; 및 상기 FEC 모드의 수행 또는 상기 ARQ 모드의 수행에 따라 출력된 영상 데이터를 상기 클라이언트로 전송하는 단계를 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 본원 발명의 또 다른 권리범위가 된다.
예를 들면 컴퓨터로 읽을 수 있는 기록 매체를 이용하여 상기 코드/명령들/프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는 마그네틱 저장 매체(예를 들어, 롬, 플로피 디스크, 하드디스크, 마그네틱 테이프 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장 매체를 포함한다. 또한, 본 발명의 실시예들은 컴퓨터로 읽을 수 있는 코드를 내장하는 매체(들)로서 구현되어, 네트워크를 통해 연결된 다수개의 컴퓨터 시스템들이 분배되어 처리 동작하도록 할 수 있다. 본 발명을 실현하는 기능적인 프로그램들, 코드들 및 코드 세그먼트(segment)들은 본 발명이 속하는 기술 분야의 프로그래머들에 의해 쉽게 추론될 수 있다.
이러한 본원 발명인 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및 클라이언트와, 이를 대한 방법은 이해를 돕기 위하여 도면에 도시된 실시예 를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.
본 발명에 의한 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및 클라이언트와, 이에 대한 방법은 클라이언트의 버퍼링 상태를 참조하여 FEC와 ARQ 두 기법 사이를 Mode 선택하는 방법을 제안함으로써, 제한된 밴드 폭을 갖는 무선망에서 불필요한 Redundancy data를 줄이고 에러 복구율을 높일 수 있고, 영상의 재생 품질을 높임과 동시에 네트워크의 부하를 줄여 효율적인 IPTV 서비스를 가능하게 하며, 모바일 단말기를 이용한 스트리밍 서비스를 원활하게 수행할 수 있도록 하는 효과가 있다.

Claims (18)

  1. 영상 데이터에 에러 정정을 위한 잉여 비트를 추가하여, 잉여 비트가 추가된 영상 데이터를 출력하는 FEC(Forward Error Correction) 모드 수행부;
    상기 영상 데이터를 수신하는 클라이언트로부터 데이터 수신에 따른 응답신호를 제공받아서, 상기 영상 데이터를 출력하는 ARQ(Automatic Repeat Request) 모드 수행부;
    상기 클라이언트의 상기 영상 데이터에 대한 수신 버퍼링 능력에 따라, 상기 영상 데이터를 FEC 모드 및 ARQ 모드 중 어느 하나의 모드에 의해 에러 복원작업이 수행되도록 모드를 결정하는 모드 결정부; 및
    상기 FEC 모드 수행부 또는 상기 ARQ 모드 수행부에 의해 출력된 영상 데이터를 상기 클라이언트로 전송하는 제1 인터페이스부를 구비하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버.
  2. 제1항에 있어서, 상기 모드 결정부는
    상기 클라이언트로부터 상기 수신 버퍼링 능력에 대한 정보를 제공받는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버.
  3. 제2항에 있어서, 상기 모드 결정부는
    상기 수신 버퍼링 능력에 대한 정보를 주기적으로 제공받는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버.
  4. 제2항에 있어서, 상기 모드 결정부는
    상기 수신 버퍼링 능력에 대한 정보를 RTCP(RTP control protocol) 또는 RTSP(real-time streaming protocol) 중 어느 하나의 프로토콜을 사용하여 제공받는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버.
  5. 제1항에 있어서, 상기 모드 결정부는
    상기 수신 버퍼링 능력이 소정 비율 이상인 경우에는 ARQ 모드에 의해 에러 복원작업이 수행되도록 결정하고, 상기 수신 버퍼링 능력이 소정 비율 미만인 경우에는 FEC 모드에 의해 에러 복원작업이 수행되도록 결정하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버.
  6. 제5항에 있어서,
    상기 소정 비율은 버퍼링 상태가 양호하다고 판단되는 임계치에 해당하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버.
  7. 제1항에 있어서, 상기 FEC 모드 수행부는
    상기 영상 데이터의 전송을 위한 통신 상태 및 에러 발생 빈도에 따라, 상기 잉여 비트의 크기를 가변하여 추가하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버.
  8. 영상 데이터의 수신 버퍼링 능력에 대한 정보를 수집하는 버퍼링 능력 수집부; 및
    상기 수집된 수신 버퍼링 능력에 대한 정보를 서버로 전송하고, 상기 서버로부터 상기 수신 버퍼링 능력에 대한 정보에 기초하여, 상기 영상 데이터에 에러 정정을 위한 잉여 비트를 추가하여, 잉여 비트가 추가된 영상 데이터를 출력하는 FEC(Forward Error Correction) 모드 및 상기 영상 데이터를 수신하는 클라이언트로부터 데이터 수신에 따른 응답신호를 제공받아서, 상기 영상 데이터를 출력하는 ARQ(Automatic Repeat Request) 모드 중 어느 하나의 모드 수행에 따라 출력된 상기 영상 데이터를 수신하는 제2 인터페이스부를 구비하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 클라이언트.
  9. 제8항에 있어서, 상기 버퍼링 능력 수집부는
    상기 수신 버퍼링 능력에 대한 정보를 주기적으로 수집하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 클라이언트.
  10. 제8항에 있어서, 상기 제2 인터페이스부는
    상기 수신 버퍼링 능력에 대한 정보를 RTCP(RTP control protocol) 또는 RTSP(real-time streaming protocol) 중 어느 하나의 프로토콜을 사용하여 상기 서버로 전송하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정을 위한 클라이언트.
  11. 영상 데이터를 수신하는 클라이언트의 상기 영상 데이터에 대한 수신 버퍼링 능력에 따라, 상기 영상 데이터에 에러 정정을 위한 잉여 비트를 추가하여, 잉여 비트가 추가된 영상 데이터를 출력하는 FEC(Forward Error Correction) 모드 및 상기 클라이언트로부터 데이터 수신에 따른 응답신호를 제공받아서, 상기 영상 데이터를 출력하는 ARQ(Automatic Repeat Request) 모드 중 어느 하나의 모드에 의해 에러 복원작업이 수행되도록 모드를 결정하는 단계;
    상기 결정된 모드에 따라, 상기 영상 데이터에 대해 상기 FEC 모드 또는 상기 ARQ 모드를 수행하는 단계; 및
    상기 FEC 모드의 수행 또는 상기 ARQ 모드의 수행에 따라 출력된 영상 데이터를 상기 클라이언트로 전송하는 단계를 구비하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정방법.
  12. 제11항에 있어서, 상기 모드를 결정하는 단계는
    상기 클라이언트로부터 상기 수신 버퍼링 능력에 대한 정보를 제공받는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정방법.
  13. 제11항에 있어서, 상기 모드를 결정하는 단계는
    상기 수신 버퍼링 능력에 대한 정보를 주기적으로 제공받는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정방법.
  14. 제12항에 있어서, 상기 모드를 결정하는 단계는
    상기 수신 버퍼링 능력에 대한 정보를 RTCP(RTP control protocol) 또는 RTSP(real-time streaming protocol) 중 어느 하나의 프로토콜을 사용하여 제공받는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정방법.
  15. 제11항에 있어서, 상기 모드를 결정하는 단계는
    상기 수신 버퍼링 능력이 소정 비율 이상인 경우에는 ARQ 모드에 의해 에러 복원작업이 수행되도록 결정하고, 상기 수신 버퍼링 능력이 소정 비율 미만인 경우에는 FEC 모드에 의해 에러 복원작업이 수행되도록 결정하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정방법.
  16. 제15항에 있어서,
    상기 소정 비율은 버퍼링 상태가 양호하다고 판단되는 임계치에 해당하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정방법.
  17. 제11항에 있어서, 상기 FEC 모드를 수행하는 단계는
    상기 영상 데이터의 전송을 위한 통신 상태 및 에러 발생 빈도에 따라, 상기 잉여 비트의 크기를 가변하여 추가하는 것을 특징으로 하는 영상 데이터의 전송에 따른 에러 복원 결정방법.
  18. 영상 데이터를 수신하는 클라이언트의 상기 영상 데이터에 대한 수신 버퍼링 능력에 따라, 상기 영상 데이터에 에러 정정을 위한 잉여 비트를 추가하여, 잉여 비트가 추가된 영상 데이터를 출력하는 FEC(Forward Error Correction) 모드 및 상기 클라이언트로부터 데이터 수신에 따른 응답신호를 제공받아서, 상기 영상 데이터를 출력하는 ARQ(Automatic Repeat Request) 모드 중 어느 하나의 모드에 의해 에러 복원작업이 수행되도록 모드를 결정하는 단계;
    상기 결정된 모드에 따라, 상기 영상 데이터에 대해 상기 FEC 모드 또는 상기 ARQ 모드를 수행하는 단계; 및
    상기 FEC 모드의 수행 또는 상기 ARQ 모드의 수행에 따라 출력된 영상 데이터를 상기 클라이언트로 전송하는 단계를 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020070021146A 2007-03-02 2007-03-02 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및클라이언트와, 영상 데이터의 전송에 따른 에러 복원결정방법 KR101177454B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070021146A KR101177454B1 (ko) 2007-03-02 2007-03-02 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및클라이언트와, 영상 데이터의 전송에 따른 에러 복원결정방법
US11/941,198 US8127196B2 (en) 2007-03-02 2007-11-16 Server and client for determining error restoration according to image data transmission, and method of determining error restoration according to image data transmission

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070021146A KR101177454B1 (ko) 2007-03-02 2007-03-02 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및클라이언트와, 영상 데이터의 전송에 따른 에러 복원결정방법

Publications (2)

Publication Number Publication Date
KR20080080872A KR20080080872A (ko) 2008-09-05
KR101177454B1 true KR101177454B1 (ko) 2012-08-27

Family

ID=39733994

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070021146A KR101177454B1 (ko) 2007-03-02 2007-03-02 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및클라이언트와, 영상 데이터의 전송에 따른 에러 복원결정방법

Country Status (2)

Country Link
US (1) US8127196B2 (ko)
KR (1) KR101177454B1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090276673A1 (en) * 2008-05-05 2009-11-05 Industrial Technology Research Institute Methods and systems for optimizing harq communication
US8738986B2 (en) * 2010-03-05 2014-05-27 Microsoft Corporation Remote presentation over lossy transport with forward error correction
CN103716114B (zh) * 2012-09-28 2018-02-23 华为技术有限公司 数据传输业务中参数设置方法、终端和基站
KR20140101572A (ko) * 2013-02-12 2014-08-20 삼성전자주식회사 전자 장치에서 서비스 품질 정보를 제공하기 위한 장치 및 방법
KR102290779B1 (ko) * 2014-07-04 2021-08-20 삼성전자주식회사 멀티미디어 데이터를 송수신하는 방법 및 장치
CN108874612B (zh) * 2017-05-09 2021-07-16 腾讯科技(深圳)有限公司 一种信息获取的方法、相关设备以及***
KR102471492B1 (ko) 2017-12-27 2022-11-28 삼성전자 주식회사 디스플레이장치 및 그 제어방법
KR102415156B1 (ko) * 2018-04-11 2022-06-29 삼성에스디에스 주식회사 Qos 관리 방법 및 이를 수행하기 위한 수신 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003179580A (ja) 2001-12-12 2003-06-27 Sony Corp データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6999432B2 (en) * 2000-07-13 2006-02-14 Microsoft Corporation Channel and quality of service adaptation for multimedia over wireless networks
US6977888B1 (en) 2000-09-14 2005-12-20 Telefonaktiebolaget L M Ericsson (Publ) Hybrid ARQ for packet data transmission
JP2005045409A (ja) * 2003-07-24 2005-02-17 Pioneer Electronic Corp 情報処理装置、そのシステム、その方法、そのプログラム、および、そのプログラムを記録した記録媒体
JP4349114B2 (ja) * 2003-12-10 2009-10-21 ソニー株式会社 送信装置および方法、受信装置および方法、記録媒体、並びにプログラム
KR20060100081A (ko) 2005-03-16 2006-09-20 콸콤 인코포레이티드 Arq 시스템에서 재전송 허용 횟수를 동적으로 조정하는방법 및 장치
WO2006103724A1 (ja) * 2005-03-25 2006-10-05 Fujitsu Limited パケットの配信帯域制御方法、配信装置及び映像配信システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003179580A (ja) 2001-12-12 2003-06-27 Sony Corp データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム

Also Published As

Publication number Publication date
US8127196B2 (en) 2012-02-28
US20080215949A1 (en) 2008-09-04
KR20080080872A (ko) 2008-09-05

Similar Documents

Publication Publication Date Title
KR101177454B1 (ko) 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및클라이언트와, 영상 데이터의 전송에 따른 에러 복원결정방법
US8499212B2 (en) Method and apparatus for adaptive forward error correction with merged automatic repeat request for reliable multicast in wireless local area networks
JP4414311B2 (ja) マルチメディアストリーミングサービスシステム及びその方法
US7320099B2 (en) Method and apparatus for generating error correction data, and a computer-readable recording medium recording an error correction data generating program thereon
US7542438B2 (en) Reliable multicast data retransmission method by grouping wireless terminals in wireless communication medium and apparatus for the same
US7315898B2 (en) Data communication system, data transmission apparatus, data reception apparatus, data communication method, and computer program
JP4000905B2 (ja) 情報処理システムおよび方法、情報処理装置および方法、記録媒体、並びにプログラム
US7051358B2 (en) Data transmission in non-reliable networks
KR100831654B1 (ko) 멀티캐스트 및 브로드캐스트 전송을 관리할 수 있는시스템에서 데이터 복구 방법
US8132071B2 (en) Transmitting device, receiving device, packet transmission method, packet reception method, and programs for same
KR101066768B1 (ko) 네트워크 통신용 시간인식 최선형 홀-필링 재시도 방법 및 시스템
EP1309122A2 (en) Apparatus and method for data communication with retransmissions
US20120300663A1 (en) Method and apparatus for retransmission decision making
US20140201587A1 (en) Fec-based reliable transport control protocols for multipath streaming
JP2008522545A (ja) 適応型前方誤り訂正
US9781488B2 (en) Controlled adaptive rate switching system and method for media streaming over IP networks
JP2007537640A (ja) パケット化データのビットレートの適合化とデータパケットの再送信との間の連携
JP2005198191A (ja) 伝送装置、伝送制御プログラム、及び伝送方法
EP1931082A1 (en) Method and apparatus for multicasting data
US8472310B2 (en) Packet distribution band controlling method, distributing apparatus, and video distributing system
KR20080062692A (ko) 스트림 녹화 방법, 장치 및 시스템
US20070115815A1 (en) Receiver, transmitter and transmission/reception system for media signal
Huszák et al. Source controlled and delay sensitive selective retransmission scheme for multimedia streaming
WO2002087140A1 (en) Return channel for broadcast transmissions
JP2008092346A (ja) 送信装置及び受信装置

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
FPAY Annual fee payment

Payment date: 20150730

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160728

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170728

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee