KR100341391B1 - 대화형 오디오 서비스를 위한 적응형 부가 전송 방법 및 패킷 손실 복구 방법과 이를 위한 멀티미디어 컴퓨터의 오디오 입출력 제어 장치 - Google Patents

대화형 오디오 서비스를 위한 적응형 부가 전송 방법 및 패킷 손실 복구 방법과 이를 위한 멀티미디어 컴퓨터의 오디오 입출력 제어 장치 Download PDF

Info

Publication number
KR100341391B1
KR100341391B1 KR1019990046087A KR19990046087A KR100341391B1 KR 100341391 B1 KR100341391 B1 KR 100341391B1 KR 1019990046087 A KR1019990046087 A KR 1019990046087A KR 19990046087 A KR19990046087 A KR 19990046087A KR 100341391 B1 KR100341391 B1 KR 100341391B1
Authority
KR
South Korea
Prior art keywords
packet
data
additional
buffer
processor
Prior art date
Application number
KR1019990046087A
Other languages
English (en)
Other versions
KR20010038203A (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 KR1019990046087A priority Critical patent/KR100341391B1/ko
Publication of KR20010038203A publication Critical patent/KR20010038203A/ko
Application granted granted Critical
Publication of KR100341391B1 publication Critical patent/KR100341391B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • 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/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

본 발명은 인터넷과 같은 패킷 통신망/패킷 교환 데이터망(PSDN)을 이용한 분산 멀티미디어 서비스에서, 오디오 데이터를 전송할 때 네트워크 상에서 발생되는 패킷 손실을 송신측의 재전송 없이 수신측에서 이미 수신된 패킷들을 이용하여 자체 복구할 수 있는 적응형 부가 전송 방법 및 패킷 손실 복구 방법과 이를 위한 멀티미디어 컴퓨터의 오디오 입출력 제어장치에 관한 것이다.
본 발명의 오디오 입출력 제어장치는 송신측 및 수신측 부가 전송 처리기를 구비한다. 그리고, 본 발명의 적응형 부가 전송 방법은 송신측 부가 전송 처리기에서 수신측에서 피드백 되는 패킷 손실률과 손실 유형에 적합한 부가 전송 방식을 동적으로 설정하며, 패킷에 포함되는 부가 데이터를 고 압축 음성 방식을 이용하여 부가하여 전송한다. 또 본 발명의 패킷 손실 복구 방법은 수신측 부가 전송 처리기에서 수신된 패킷의 부가 데이터를 이용하여 부가 전송 방식에 따라 손실 패킷을 복구한다. 따라서, 본 발명을 이용하면 패킷 손실에 의한 수신자의 음성 인식 왜곡 또는 인식 불능을 최소화할 수 있으며, 부가 데이터의 트래픽 오버헤드를 최소화함으로써 네트워크의 부담을 줄일 수 있다. 또한 응용 서비스의 요구에 따라 가변적으로 손실 복구율을 맞출 수 있는 부가 전송 방식을 선택함으로써 실시간 대화형 서비스에서 질 좋은 오디오를 효과적으로 지원할 수 있다.

Description

대화형 오디오 서비스를 위한 적응형 부가 전송 방법 및 패킷 손실 복구 방법과 이를 위한 멀티미디어 컴퓨터의 오디오 입출력 제어 장치{Adaptive added transmission method and packet loss recovery method for interactive audio service, and audio input-output control device in multimedia computer}
본 발명은 인터넷과 같은 패킷 통신망/패킷 교환 데이터망(PSDN)을 이용한 분산 멀티미디어 서비스 즉, 영상회의, 원격교육 및 원격의료 서비스에 이용되는 오디오 데이터를 각 사용자 단말기에 전송할 때 네트워크 상에서 발생되는 패킷 손실을 송신측의 재전송 없이 수신측에서 이미 수신된 패킷들을 이용하여 자체 복구할 수 있도록 한 적응형 부가 전송 방법 및 패킷 손실 복구 방법에 관한 것이다.
또한 본 발명은 상술한 적응형 부가 전송 방법 및 패킷 손실 복구 방법을 구현하기 위한 멀티미디어 컴퓨터의 오디어 입출력 제어장치에 관한 것이기도 하다.
패킷 통신망에서 데이터들의 손실 원인의 대부분은 중간 노드들에서의 송수신 버퍼의 넘침 현상(congestion)으로 인해 발생하는데, 이를 해결하려는 종래의 방식은 크게 2가지로 구분할 수 있다.
첫째, 손실된 패킷을 송신측에 알려서 재전송 하도록 하는 재전송 방식으로 전송 신뢰성은 높으나, 재전송에 의한 지연 현상에 의해 지연 시간에 민감한 대화형 응용 서비스에는 재전송 방식이 적합치 않다.
둘째, 송신측의 추가 정보에 의한 수신측의 복구 방식(Forward Error Correction : FEC)으로 추가 지연 없이 신뢰성을 제공하는 방식이다. 기존의 FEC 방식은 2 ~ 3 패킷 마다 패러티 패킷을 부가 전송하는 것으로 패킷이 손실된 경우 비트 단위의 완벽한 복구가 가능한 장점이 있으나 부가 데이터(페러티 패킷)의 트래픽 오버헤드를 초래하는 단점을 갖고 있다. 이러한 오버헤드는 또 다른 패킷 손실을 초래할 수 있다.
또한 기존의 방식들은 수신측의 패킷 손실 유형에 무관하게 단일 방식의 부가 전송 방식을 채택하고 있으며, 이는 응용 서비스의 손실 관용도 또는 네트워크 상의 패킷 손실 특성을 고려하지 않는 문제점을 갖고 있다.
본 발명은 상술한 종래의 부가 전송 방식의 문제점을 해결하기 위한 것으로, 패킷 손실이 발생하는 패킷 통신망에서 오디오 데이터를 전송할 때 발생하는 손실에 의한 음성 왜곡 현상이나 끈김 현상을 최소화하고, 또 부가 데이터의 트래픽 오버헤드를 최소화할 수 있는 적응형 부가 전송 방법을 제공하는 데 그 목적이 있다.
본 발명의 다른 목적은 송신측의 재전송 없이 수신된 패킷에 포함되어 있는 부가 데이터를 이용하여 손실된 패킷을 복구할 수 있는 패킷 손실 복구 방법을 제공하는 데 있다.
본 발명의 또 다른 목적은 상기한 목적들을 달성하는 데 필요한 멀티미디어 컴퓨터의 오디오 입출력 제어장치를 제공하는 데 있다.
도 1은 티미디어용 컴퓨터의 개념적 구성도
도 2는 본 발명에 따른 오디오 입출력 제어 장치의 상세 구성도
도 3은 부가 전송 방식의 패킷 구조
도 4는 본 발명에 따른 송신측의 부가 전송 처리기 구성도
도 5는 본 발명에 따른 중복 인코딩된 RTP 패킷 구조
도 6은 본 발명에 따른 부가 전송의 동적 선택 방식 흐름도
도 7은 본 발명에 따른 송신측 부가 전송 수행 흐름도
도 8은 본 발명에 따른 수신측의 부가 전송 처리기 구성도
도 9는 본 발명에 따른 수신측 패킷 손실 복구 흐름도
* 도면의 주요 부분에 대한 부호의 설명 *
100 : 메인 메모리 200 : 오디오 입출력 제어장치
210 : 오디오 입력 디바이스 드라이버
220 : 오디오 출력 디바이스 드라이버
230 : 실시간 전송 처리기 231 : 오디오 입력부
232 : 오디오 출력부 240 : 전송 품질 정보 처리기
250 : 부가 전송 처리기 250-1 : 송신측 부가 전송 처리기
250-2 : 수신측 부가 전송 처리기 251, 256 : PEB 버퍼
252, 258 : 보류 버퍼 253 : 인코더
254, 257 : REB 버퍼 255 : 패킷 재구성기
259 : 디코더 300 : 중앙 처리 장치
400 : 오디오 입력 디바이스 500 : 네트워크 디바이스
600 : 오디오 출력 디바이스
상기와 같은 목적을 달성하기 위하여 본 발명은 오디오 입출력 제어장치에 송신측 및 수신측으로 구성되는 부가 전송 처리기를 구비하여, 송신측에서는 수신측에서 피드백 되는 패킷 손실률과 손실 유형에 적합한 부가 전송 방식을 동적으로 설정하여 오디오 데이터의 전송시 패킷에 부가 데이터를 고 압축 음성 방식을 이용하여 부가하여 전송한다. 그리고 수신측에서 수신된 패킷의 부가 데이터를 이용하여 손실 패킷을 복구하는 것을 특징으로 한다.
이하, 본 발명의 바람직한 실시예를 첨부도면을 참조하여 상세하게 설명한다.
도 1은 일반적인 멀티미디어용 컴퓨터의 개념적 구성도로서, 오디오 입출력을 중심으로 도시한 것이다.
멀티미디어용 컴퓨터는 메인 메모리(100), 오디오 입출력 제어장치(200), 중앙 처리 장치(300), 오디오 입력 디바이스(400), 네트웍 디바이스(500), 오디오 출력 디바이스(600)가 시스템 버스에 연결되어 구성된다.
이와 같은 구성에서 메인 메모리(100), 중앙처리 장치(300)가 시스템 버스를 통하여 모든 미디어 처리를 위한 수행 지시나 저장 능력을 갖는다. 인간으로부터 발생된 음성은 오디오 입력 디바이스(400)에 장착된 마이크 장치에 의해서 입력되며, 네트워크 디바이스(500)를 통해 원격으로 패킷화된 음성 데이터를 전송하거나 수신한다. 네트워크 디바이스(500)로부터 도착한 오디오 데이터를 오디오 출력(600)에 장착된 스피커를 통해서 사용자에게 전달된다.
이러한 일련의 오디오 데이터를 네트워크 디바이스(500) 및 오디오 입출력 장치(400, 600)에 전달하기 위한 동기화된 제어를 담당하는 오디오 입출력 제어장치(200)는 중앙 처리 장치(300)의 제어하에 시스템 내의 오디오 데이터 제어를 담당한다.
도 2는 도 1에서 제시한 구성 요소 중에서 오디오 입출력 제어장치의 상세 구성도로서, 본 발명의 적응형 부가 전송 방법 및 패킷 손실 복구 방법 구현을 위해 부가 전송 처리기를 구비하는데 그 특징이 있다.
즉, 오디오 데이터에 표준안에 정의된 12 바이트의 헤더를 붙여 RTP 패킷으로 재구성하는 실시간 전송 처리기(230), 수신측으로부터 이미 전송 받은 RTP 패킷에 관한 통신 상의 품질을 피드백하는 전송 품질 정보 처리기(240) 및 오디오 입출력 디바이스 드라이버(210, 220)를 포함하는 오디오 입출력 제어장치에 있어서, 상기 전송 품질 정보 처리기(240)의 피드백 정보를 이용하여 부가 전송 방식을 설정하고, 실시간 전송 처리기(230)가 구성한 RTP 패킷을 부가 전송 방식에 따라 부가 데이터를 포함하는 새로운 패킷 포맷으로 재구성하여 실시간 전송 처리기(230)에 출력하고, 상기 실시간 전송 처리기(230)를 통해 수신된 패킷의 부가 데이터를 이용하여 부가 전송 방식에 따라 패킷 손실을 복구하여 실시간 전송 처리기(230)에 출력하는 부가 전송 처리기(250)를 더 포함하여 구성된다.
이와 같은 구성에서, 오디오 입력 디바이스(400)를 통해서 입력된 디지털화 된 오디오 데이터는 컴퓨터의 운영 체제에 내장되는 오디오 입력 디바이스 드라이버(210), 실시간 전송 처리기(230)를 통해서 메인 메모리(100)에 저장된다.
실시간 전송 처리기(230)는 IETF RFC 1889, RFC 1890 표준안에 제시된 실시간 전송 프로토콜(Real-time Transport Protocol : RTP)을 구현한 장치로서 오디오 데이터에 표준안에서 정의된 12 바이트의 헤더를 붙여 RTP 패킷으로 재구성한다.
오디오 데이터를 포함하는 RTP 데이터는 신뢰성있는 전송을 위해서 부가 전송 처리기(250)의 송신측에서 부가 데이터를 포함하는 새로운 패킷 포맷으로 재구성되어, 실시간 전송 처리기(230)가 갖는 전송 기능을 이용하여 네트워크 디바이스(500)에 전달된다.
전송 품질 정보 처리기(240)는 상기 표준에 포함된 실시간 제어 프로토콜(Real-time Control Protocol : RTCP)을 구현한 장치로서 수신측으로부터 이미 전송 받은 RTP 패킷에 관한 통신 상의 품질을 피드백 한다. RTCP 패킷에 포함된 전송 품질에 관한 정보는 패킷 손실에 관한 정보, 식별자 확인 정보, 지연관련 정보 등이 포함된다. 따라서 본 발명은 정기적으로 피드백 되는 RTCP 패킷의 손실에 관련 정보를 이용하여 부가 전송 방식을 동적으로 설정하며, 동적 설정의 시간적 구간은 RTCP 패킷의 피드백 시각 공간에 의존된다.
원격지에서 도착한 오디오 패킷의 처리는 실시간 전송 처리기(230)의 수신 기능에 의해 네트워크 디바이스(500)로부터 RTP 패킷을 수신하고, 앞서 전송 중에 발생한 패킷 손실을 복구하기 위해서 부가 전송 처리기(250)의 수신측에서 패킷의 부가 데이터를 이용하여 손실 패킷을 복구한다. 전송된 데이터나 복구된 데이터는 실시간 전송 처리기(230)와 오디오 출력 디바이스 드라이버(220)를 통해서 오디오 출력 디바이스(600)에 전달된다.
도 3은 부가 전송 방식에서 패킷에 부가 데이터를 재구성하는 방식들의 구성도를 나타낸 것이다.
부가 전송 방식은 패킷 손실을 고려하여 수신측에서 복구할 수 있도록 송신측의 패킷 중복성을 허용하는 방식으로 이를 위해 RTP 패킷에 주 인코딩 블록(Primary Encoding Block : PEB)과 패킷 손실을 대비한 중복 인코딩 블록(Redundant Encoding Block : REB)으로 구성된다. REB는 앞서 전송된 해당 PEB가 손실되지 않은 경우 수신측에서 무시되므로 패킷 손실량이 낮은 통신 환경에서의 부가 전송 메커니즘의 적용은 REB 크기 만큼의 대역폭 낭비를 초래한다.
따라서 본 발명에서는 RTCP 프로토콜을 이용하여 수신측으로부터 제공 받은 패킷 손실에 대한 피드백 정보를 이용하여 부가 전송 방식을 동적으로 설정함으로써 부가 데이터에 해당하는 대역폭 낭비를 줄인다.
부가 전송 방식의 설정은 REB를 몇 번째 후속 패킷에 부가할 것인가를 결정하는 것으로 패킷 손실의 연속성에 의존한다.
패킷 손실에 대한 통신망 특성 정보를 알 수 있고, 부가 전송 메커니즘을 동적으로 적용한다면, 부가 데이터에 해당하는 대역폭 낭비를 줄일 수 있을 것이다.
도 3에서 (31)은 부가 데이터 없이 PEB 데이터 블록 만을 전송하는 표준 방식을 나타낸 것이며, (32)는 REB를 첫번째 후속 패킷에 부가하는 경우로 패킷 손실이 2개 이상 동시에 일어났을 경우 1개의 이전 패킷 만을 복구할 수 있는 1-순서 중복 방식이다. 일반적으로 네트워크에서 발생하는 패킷 손실의 유형이 대부분 독립적이므로 (32)에서 제시한 방법으로 모든 독립 손실을 복구한다.
그러나 2개 이상의 연속 손실이 발생할 경우 (33)에서 제시한 2-순서 중복 방식으로 부가 전송을 수행함으로써 최대 2개의 연속 데이터를 복구할 수 있다 . 그러나, (33) 또는 (34)의 n-순서 중복 방식은 수신측에서 손실된 패킷을 복구할 때 약간의 지연을 초래하는 단점을 갖는다.
본 발명의 오디오 입출력 제어장치에 구비되는 부가 전송 처리기는 본 발명의 적응형 부가 전송 방법을 구현하는 송신측 부가 전송 처리기(250-1)와 본 발명의 패킷 손실 복구 방법을 구현하는 수신측 부가 전송 처리기(250-2)로 이루어진다.
도 4는 송신측 부가 전송 처리기(250-1)의 구성도로서, 실시간 전송 처리기(230)에서 입력되는 RTP 패킷을 저장하는 PEB 버퍼(251) 및 보류 버퍼(252), 상기 보류 버퍼(252)에 저장된 패킷을 부가 데이터로서 압축하는 인코더(253), 상기 인코더(253)에서 압축한 부가 데이터를 저장하는 REB 버퍼(254), PEB 버퍼(251)의 데이터 블록과 REB 버퍼(254)의 압축된 부가 데이터를 입력 받아 부가 전송 방식에 따라 패킷을 재구성하는 패킷 재구성기(255), 및 부가 전송 방식의 결정과 부가 전송 수행시에 필요한 정보(초기 상태, 현재의 부가 전송 방식, 패킷 손실률, 독립 패킷 손실률, 2-버스트 패킷 손실률, 패킷 손실 허용값, 최근 패킷 순서, 패킷 순서 번호 등)를 저장하는 다수개의 레지스터(ISR, CSR, LRR, CLR1, CLR2, LTR, HSR, Counter)로 구성된다.
상기와 같은 구성을 갖는 송신측 부가 전송 처리기(250-1)의 동작을 설명한다.
실시간 전송 처리기(230)의 오디오 입력부(231)를 경유하여 전달된 오디오 데이터는 RTP 패킷으로 송신측 부가 전송 처리기(250-1)에 입력되고, 이들 패킷은PEB 버퍼(251)와 보류 버퍼(252)에 복제된다.
인코더(253)는 부가 데이터를 압축하는 장치로 부가 전송 방식의 단점인 트래픽 오버헤드를 최소화하기 위해서 가능한 높은 압축률을 갖는 인코더, 예를 들면 LPC(Linear Predictive Coding), GSM(Group Speciale Mobile)를 이용한다.
REB 버퍼(254)는 인코더(253)에서 압축한 부가 데이터를 저장하며, 도면에 나타내지는 않았지만 그 영역이 REB 버퍼-1, 2로 나뉘어져 있다.
패킷 재구성기(255)는 PEB 버퍼(251)의 데이터 블록과 REB 버퍼(254)의 압축된 부가 데이터를 입력 받아 도 5에 나타낸 패킷으로 재구성한다.
도 5에 나타낸 패킷 구조는 기존의 RFC1889에서 제시한 RTP 패킷의 구조를 본 발명에서 제시한 부가 데이터를 포함할 수 있도록 새롭게 확장한 것이다. 각 필드의 의미는 다음과 같다.
현재 RTP 프로토콜의 버전 번호(V), 현 패킷을 보안 처리함에 있어 보안 알고리즘에 따라 32bit로 데이터 보안을 요구하는 경우, 만일 전체 플레이로드(playload, 중복 인코딩 데이터 + 주 인코딩 데이터) 부분이 32bit 단위로 구분될 수 없는 경우 32bit를 맞추기 위하여 '0'값을 페딩하는 경우에 그 페딩 표시(P), 패킷 확장 여부(X), 플레이로드 내에 여러 사용자의 데이터가 혼합된 경우 그 사용자 수(CC), 패킷 내의 데이터 내에 구분하고 싶은 특정 데이터의 포함 여부(M), 패킷에 포함된 데이터 필드의 유형(PT : Playload Type), 패킷의 순서 번호(SNP : Sequence Number of Primary), 수신측에서 전송 지연 시간이나 지연 변이를 검출할 수 있도록 부가하는 데이터가 코덱 보드에서 샘플링한 시각(TPE : Timestamp of Primary Encoding), 전송측 구분 식별자(SSRC : Synchronizarion source identifier), 표준방식·1-순서 중복 방식·2-순서 중복 방식 중 어느 하나를 나타내는 현재 전송된 패킷의 부가 전송 방식(O), 부가 데이터를 재생할 때 이용되는 앞서 전송한 주 인코딩 데이터(본래 데이터)와 중복 인코딩 데이터(부가 데이터)간의 생성시간 차이(TO : Timestamp Offset), 주 인코딩 데이터와 중복 인코딩 데이터를 구분하기 위한 중복 인코딩 데이터의 크기(BL : Block Length), 중복 인코딩 데이터(REB) 및 주 인코딩 데이터(PEB) 필드 이다.
도 4의 송신측 부가 전송 처리기(250-1)의 레지스터 중에서 CSR(Current State Register)은 현재의 부가 전송 방식을 나타낸다. 예를 들어 CSR == 0 인 경우 도 3의 (31) 방식, CSR == 1 인 경우 도 3의 (32) 방식, 그리고 CSR == 2 인 경우는 도 3의 (33) 방식으로 부가 데이터가 포함되는 후속 패킷의 위치를 지정한다. 또한 LTR(Loss Tolerance Register)은 응용 서비스의 요구를 반영하는 패킷 손실 허용 값을 저장하는 레지스터로서 응용 서비스로부터 직접 제공 받는다. LRR(Loss Rate Register)는 전송 품질 정보 처리기(240)로부터 제공된 패킷 손실률을 저장하는 레지스터이다. 그리고, CLR1은 수신측의 독립 패킷 손실률(Single Loss Rate Register)을 저장하는 레지스터이고, CLR2는 2-버스트 패킷 손실률(2-burstness Loss Rate Register)을 저장하는 레지스터이다.
그리고, HSR(Highest Sequence Register)은 최근 패킷 순서번호를 저장하는 레지스터이고, ISR(Initial State Register)는 부가전송 방식의 초기상태를 저장하는 레지스터이며, Counter는 송신한 패킷 수를 카운트하는 카운터이다.
이하에서, 상술한 송신측 부가 전송 처리기(250-1)에 의한 본 발명의 적응형 부가 전송 방법에 대해 설명한다.
본 발명의 적응형 부가 전송 방법은 크게 전송 품질 정보 처리기(240)의 피드백 정보에서 추출한 패킷 손실에 대한 품질 정보를 이용하여 부가 전송 방식을 설정하는 과정과, 설정된 부가 전송 방식에 따라 RTP 패킷에 부가 데이터를 포함시켜 패킷을 재구성하여 전송하는 과정으로 나눌 수 있으며, 부가 전송 방식의 설정 과정은 도 6에, 부가 전송 수행 과정은 도 7에 나타내었다.
송신측 부가 전송 처리기(250-1)는 동적 선택 방식을 이용하여 응용 서비스가 요구하는 패킷 손실 허용값 범위 내에 전송할 수 있도록 하기 위하여 부가 전송 방식을 설정한다.
이를 위해서 전송 품질 정보 처리기(240)는 그 자체의 알고리즘에 의해서 비정기적으로 수신측의 전송 품질을 송신측에 알려주는 피드백 기능을 수행하며, 송신측 부가 전송 처리기(250-1)는 전송 품질 정보 처리기(240)의 피드백 정보에서 추출한 패킷 손실에 대한 품질 정보를 이용하여 다음과 같은 단계를 거쳐 부가 전송의 방식을 설정한다.
즉, 송신측 부가 전송 처리기(250-1)가 전송 품질 정보 처리기(240)로부터 피드백 정보를 전달받아 부가 전송 방식 결정에 필요한 정보를 레지스터에 저장하는 단계와, 패킷 손실률이 허용 손실률 이하인 경우는 부가 전송 방식을 RTP 패킷에 부가 데이터를 포함하지 않는 표준 방식으로 변경하는 단계와, 패킷 손실률이 허용 손실률 보다 큰 경우 독립 손실을 모두 복구할 경우를 대비하여 전체 패킷수, 독립 손실 패킷의 손실률을 계산하는 단계와, 허용 손실률이 패킷 손실률에서 독립 손실 패킷의 손실률을 뺀 값 이상이면, 부가 전송 방식을 첫 번째 후속 패킷에 부가 데이터를 포함시키는 1-순서 중복 방식으로 변경하는 단계, 및 허용 손실률이 패킷 손실률에서 독립 손실 패킷의 손실률을 뺀 값 보다 작으면 부가 전송 방식을 두 번째 후속 패킷에 부가 데이터를 포함시키는 2-순서 중복 방식으로 변경하는 단계를 수행하여 부가 전송 방식을 설정한다.
이를 상세하게 설명한다.
송신측 부가 전송 처리기(250-1)는 일정한 주기를 가지고 전송 품질 정보 처리기(240)에서 입력되는 피드백 정보에서 부가 전송 방식 결정에 필요한 정보(패킷 손실률, 독립 패킷 손실률, 2-버스트 패킷 손실률 및 최근 패킷 순서 번호 등)를 추출한 다음, 패킷 손실률, 독립 패킷 손실률, 2-버스트 패킷 손실률은 각각 LRR, CLR1, CLR2에 저장한다(S10).
그런 다음 LRR에 저장된 패킷 손실률과 LTR에 저장된 허용 손실률을 비교한다(S11).
S11에서의 비교 결과, 패킷 손실률이 허용 손실률 이하인 경우는 현재의 부가 전송 방식이 표준방식(CSR = 0)이 아니면 표준방식으로 변경한다(S12, S13). 따라서 앞으로 전송되는 RTP 패킷에는 부가 데이터를 포함시키지 않는다.
그러나 S11에서의 비교 결과, 패킷 손실률이 허용 손실률 보다 큰 경우 독립 손실을 모두 복구할 경우를 대비하여 전체 패킷수와 독립 손실 패킷의 손실률을 계산한다(S14, S15).
전체 패킷수는 전송 품질 정보 처리기(240)로부터 받은 최근 패킷 순서 번호에서 HSR 레지스터의 값을 뺀 것이다. 여기서, HSR 레지스터의 값은 지난번 전송 품질 정보 처리기(240)로부터 피드백 정보를 받았을 때의 것이므로, '최근 패킷 순서 번호 - HSR'은 피드백 정보가 되는 전송되는 기간동안에 전달된 패킷 수가 된다.
그리고 독립 손실 패킷의 손실률(L1)은 패킷 손실률(LRR) * 독립 패킷 손실률(CLR1) 이다.
전체 패킷수와 독립 손실 패킷의 손실률을 계산한 다음, 패킷 손실률(LRR)에서 독립 손실 패킷의 손실률(L1)을 뺀 값과 허용 손실률(LTR)을 비교한다(S16).
여기서, LRR-L1은 이미 1-순서 방식으로 모든 독립된 손실 패킷이 복구된 이후의 손실률을 의미한다.
따라서, 단계 S16에서의 비교결과 허용 손실률(LTR)이 패킷 손실률(LRR)에서독립 손실 패킷의 손실률(L1)을 뺀 값 이상인 경우에는, 현재의 부가 전송 방식이 1-순서 부가 방식(CSR = 1)이 아니면 1-순서 부가 방식(CSR = 1)으로 변경한다. 때문에 앞으로는 도 3의 (32) 방식으로 부가 전송을 전송하게 된다.
그러나 허용 손실률(LTR)이 패킷 손실률(LRR)에서 독립 손실 패킷의 손실률(L1)을 뺀 값 보다 작은 경우, 즉 2개 이상의 중복 손실에서 복구 후 남은 손실 값이 LTR(허용 손실률)을 만족할 수 없다면 현재의 부가 전송 방식이 2-순서 부가 방식(CSR = 2)이 아니면 2-순서 부가 방식(CSR = 2)으로 변경한다(S16 ∼ S19). 때문에 앞으로는 도 3의 (33) 방식으로 부가 전송을 수행하게 된다
이와 같이 동적으로 설정된 부가 전송 방식에 따라 송신측 부가 전송 처리기(250-1)가 수행하는 부가 전송 과정은 도 7은 나타낸 바와 같다.
즉, 실시간 전송 처리기(230)로부터 RTP 패킷을 수신한 다음 Counter를 1 증가 시키는 단계와, CSR과 Counter를 이용하여 현재의 부가 전송 방식을 확인하여 패킷에 부가 데이터를 포함시킬 것인지를 판단하고, 부가시킬 데이터를 선택하는 단계와, 실시간 전송 처리기(230)로부터 수신된 RTP 패킷과 선택된 부가 데이터를 이용하여 패킷을 재구성하는 단계와, 재구성된 패킷을 실시간 전송 처리기(230)를 통하여 네트워크 디바이스(500)에 전달하는 단계와, 실시간 전송 처리기(230)로부터 수신된 RTP 패킷을 패킷 손실 발생시의 손실 복구를 위해 인코딩하여 저장하는 단계를 수행한다.
이를 상세히 설명한다.
송신측 부가 전송 처리기(250-1)가 실시간 전송 처리기(230)로부터 오디오RTP 패킷을 수신한다(S20). 이때 수신된 RTP 패킷은 PEB 버퍼(251)에 복제된다. 그런 다음 패킷 연속 번호 카운터(Counter)를 1 증가 시킨다(S20, S21).
그런 다음, CSR이 0인지 확인한다(S22).
CSR이 0인 경우 부가 데이터를 포함하지 않는 표준 방식이므로 PEB 버퍼(251)의 데이터만을 실시간 전송 처리기(230)의 전송 기능을 이용하여 네트워크 디바이스(500)로 전송한다(S23).
그러나, CSR이 0이 아닌 경우는 후속 패킷에 부가 데이터를 포함하는 1-순서 중복 방식(CRS=1) 또는 2-순서 중복 방식(CRS=2)이므로 전송 패킷의 재구성을 위해 PEB 버퍼(251)를 보류 버퍼(252)에 복사한다.(S24)
그리고나서, CSR이 1인지 확인한다(S25).
확인 결과 CSR이 1인 경우, 즉 현재의 부가 전송 방식이 1-순서 중복 방식이면 REB 버퍼(254) 중에서 REB 버퍼-1이 비었는지 확인한다(S26).
확인 결과 REB 버퍼-1이 비어 있지 않으면 패킷 재구성기(255)에서 현재 REB 버퍼-1에 저장되어 있는 이전 패킷의 압축 데이터와 PEB 버퍼(251)의 현재 데이터를 이용하여 도 5에 나타낸 바와 같은 구조로 패킷을 구성하여 실시간 전송 처리기(230)를 통해 네트워크 디바이스(500)로 전송한다(S27, S28). 그런 다음 보류 버퍼(252)의 데이터를 인코더(253)에서 인코딩하여 REB 버퍼-1에 저장함으로써 부가 전송을 끝낸다(S29).
한편, S26에서의 확인 결과 REB 버퍼-1이 비어 있으면 패킷에 부가할 데이터가 없으므로 PEB 버퍼(251)의 데이터만을 실시간 전송 처리기(230)의 전송 기능을 이용하여 네트워크 디바이스(500)로 전송한 후(S30), S29를 수행하여 보류 버퍼(252)의 데이터를 인코더(253)에서 인코딩하여 REB 버퍼-1에 저장함으로써 부가 전송을 끝낸다.
그리고, S25에서 CSR을 확인한 결과, CSR이 1이 아니면 CSR의 값이 2인 경우로서 현재의 부가 전송 방식은 2-순서 중복 방식이다. 때문에, REB 버퍼(254)에 저장된 이전 패킷 중에서 RTP 패킷에 부가 데이터로서 포함될 패킷을 선택하여야 한다.
이를 위해 먼저, Counter를 2로 나눈다(S31).
S31에서 Counter 값을 2로 나눈 나머지가 0(Counter 값이 홀 수)이면 REB 버퍼-1이 비었는지 확인한다(S32). 확인 결과 REB 버퍼-1이 비어있지 않으면 S27 내지 S29를 수행하여 전송을 끝낸다.
즉, 패킷 재구성기(255)에서 REB 버퍼-1에 저장되어 있는 이전 패킷의 압축 데이터와 PEB 버퍼(251)의 현재 데이터를 이용하여 도 5에 나타낸 바와 같은 구조로 패킷을 구성하여 실시간 전송 처리기(230)를 통해 네트워크 디바이스(500)로 전송한다. 그런 다음 보류 버퍼(252)의 데이터를 인코더(253)에서 인코딩하여 REB 버퍼-1에 저장한다.
그러나 S32에서의 확인 결과, REB 버퍼-1이 비어있으면 패킷에 부가할 데이터가 없으므로 S30과 S29를 수행하여 전송을 끝낸다. 즉, PEB 버퍼(251)의 데이터만을 실시간 전송 처리기(230)의 전송 기능을 이용하여 네트워크 디바이스(500)로 전송한다. 그후, 보류 버퍼(252)의 데이터를 인코더(253)에서 인코딩하여 REB 버퍼-1에 저장한다.
S31에서 Counter 값을 2로 나눈 나머지가 0인 경우(Counter 값이 짝수)에는 REB 버퍼-2이 비었는지 확인한다(S33). 확인 결과 REB 버퍼-2가 비어있지 않으면 S34 내지 S36을 수행하여 전송을 끝낸다. 즉, 패킷 재구성기(255)에서 현재 REB 버퍼-2에 저장되어 있는 이전 패킷의 압축 데이터와 PEB 버퍼(251)의 현재 데이터를 이용하여 도 5에 나타낸 바와 같은 구조로 패킷을 구성하여 실시간 전송 처리기(230)를 통해 네트워크 디바이스(500)로 전송한 다음 보류 버퍼(252)의 데이터를 인코더(253)에서 인코딩하여 REB 버퍼-2에 저장한다.
그러나 S33에서의 확인 결과, REB 버퍼-2가 비어있으면 패킷에 부가할 데이터가 없으므로 S37과 S36을 순차 수행하여 전송을 끝낸다. 즉, PEB 버퍼(251)의 데이터만을 실시간 전송 처리기(230)의 전송 기능을 이용하여 네트워크 디바이스(500)로 전송한 후, 보류 버퍼(252)의 데이터를 인코더(253)에서 인코딩하여 REB 버퍼-2에 저장한다.
도 8은 본 발명의 실시예에 따른 수신측 부가 전송 처리기의 구성도를 나타낸 것이다. 도면에서 보듯이 수신측 부가 전송 처리기(250-2)는 3개의 버퍼(PEB 버퍼, REB, 보류 버퍼), 디코더 및 4개의 레지스터로 구성된다.
즉, 입력 받은 패킷의 PEB 데이터 부분을 저장하는 PEB 버퍼(256)와; 입력 받은 패킷의 부가 데이터를 저장하는 REB 버퍼(257)와; 이전 패킷이 손실된 경우 손실된 패킷의 복구를 위해 수신된 패킷을 저장하는 보류 버퍼(258)와; 상기 REB 버퍼(275) 또는 보류 버퍼(258)에 저장된 데이터를 디코딩하여 실시간 전송 처리기(230)에 출력하여 패킷 손실을 복구하는 디코더(259); 및 수신된 패킷을 처리하고 패킷 손실을 복구하기 위한 정보(손실 복구 패킷의 존재 유무, 현재의 부가 전송 방식, 송신측 순서 번호, 패킷 순서 번호 등)를 저장하는 다수개의 레지스터(HFR, CSR, SNR, Counter)를 포함하여 구성된다.
이와 같이 구성되는 수신측 부가 전송 처리기(250-2)의 동작을 설명한다.
수신측 부가 전송 처리기(250-2)는 수신된 RTP 패킷을 실시간 전송 처리기(230)을 경유하여 받는다. 여기서 수신된 RTP 패킷은 도 5와 같은 구조이다.
입력 받은 패킷의 PEB 부분(본래 데이터)은 PEB 버퍼(256)에 저장하고, 패킷의 REB 부분(부가 데이터)는 REB 버퍼(257)에 저장한다. 그런다음 이전 패킷이 손실된 경우 REB 버퍼(257)의 데이터를 디코더(259)를 통해서 재생하여 실시간 전송 처리기(230) 내의 오디오 출력부(232)에 전달함으로써 손실 패킷 복구를 수행한다.
이때 패킷의 재생 순서를 맞추기 위해서 HFR(Holding Flag Register) 레지스터를 이용한다.
또 실시간 전송 처리기(230)에서 전달한 패킷의 손실 여부를 확인하기 위해서 패킷 내의 순서 번호와 Counter를 이용한다. 이전 패킷이 손실된 사실을 확인한후 PEB 버퍼(256)의 데이터는 보류 버퍼(258)로 옮겨져 재생 순서를 기다린다. 이는 다음 패킷이 PEB 버퍼(256)에 도착하기 위한 공간을 비워 주는 역할을 한다. 이때, 수신된 도 5의 구조를 갖는 패킷은 부가 데이터가 어떤 방식으로 재구성 되었는가를 나타내기 위해서 패킷의 부가 전송 방식 필드(O)에 0, 1, 2 중 어느하나를 기록하여 현재 부가 전송 방식을 나타낸다. 이는 수신측 부가 전송 처리기(250-2)의 CSR(Current State Register)에 저장된다.
그런 다음, 수신된 패킷이 손실된 경우 복구 과정을 거치게 된다.
이하, 도 9에 도시한 본 발명의 실시예에 따른 패킷 손실 복구 방법에 대해 상세하게 설명한다.
손실된 패킷을 복구하기 위하여 수신측 부가 전송 처리기(250-2)는 실시간 전송 처리기(230)로부터 오디오 패킷을 수신하여 패킷의 PEB 부분과 REB 부분을 각각 PEB 버퍼(256)와 REB 버퍼(257)에 저장하고, Counter를 1 증가 시키는 단계, 수신된 패킷의 확장 여부를 확인하는 단계, 패킷이 확장되지 않은 경우에는 PEB 버퍼(256)의 데이터를 실시간 전송 처리기(230)의 오디오 출력부(232)에 전달하고, 패킷이 확장된 경우에는 패킷 순서 번호와 부가 전송 방식 필드를 각각 SNR과 CSR에 저장하는 단계, 패킷 손실 여부를 확인하는 단계, 패킷 손실이 없는 경우 PEB 버퍼(256)의 데이터를 실시간 전송 처리기의 오디오 출력부에 전달하는 단계, 패킷 손실이 발생한 경우 부가 전송 방식을 확인하는 단계, 부가 전송 방식이 표준 방식인 경우 패킷에 복구없이 PEB 버퍼(256)의 데이터를 실시간 전송 처리기의 오디오출력부에 전달하는 단계, 부가 전송 방식이 1-순서 중복 방식인 경우 REB 버퍼(257)의 데이터를 디코더에 보내어 디코딩하여 실시간 전송 처리기의 오디오 출력부에 전달하여 손실된 이전 패킷을 복구한 다음 PEB 버퍼(256)의 데이터를 실시간 전송 처리기의 오디오 출력부에 전달하는 단계, 부가 전송 방식이 2-순서 중복 방식인 경우 HFR의 값을 확인하는 단계, HFR의 값이 1이면 보류 버퍼에 저장되어 있는 REB 데이터(257)를 디코더에 보내어 디코딩하여 실시간 전송 처리기의 오디오 출력부에 전달함으로써 손실된 이전의 패킷을 복구하는 단계, HFR의 값이 1이 아닌 경우 및 손실 복구를 수행한 다음 SNR과 Counter의 차이를 확인하는 단계, SNR과 Counter의 차이가 2 보다 작은 경우 손실 복구를 끝내는 단계, SNR과 Counter의 차이가 2이상인 경우 패킷 손실 복구를 위해 수신된 패킷을 보류 버퍼에 저장하고 HFR을 1로 세트한 다음 손실 복구를 끝내는 단계를 수행한다.
이를 상세하게 설명한다.
먼저, 수신측 부가 전송 처리기(250-2)는 실시간 전송 처리기(230)로부터 오디오 패킷을 수신하여 패킷의 PEB 부분과 REB 부분을 각각 PEB 버퍼(256)와 REB 버퍼(257)에 저장한 다음, Counter를 1 증가 시킨다(S40, S41).
이어서, 패킷의 X 필드가 1인지 확인한다(S42). 여기서 패킷의 X 필드는 패킷의 확장여부를 나타내는데, 패킷이 확장된 경우에는 X = 1이다.
S42에서의 확인 결과, 패킷이 확장되지 않은 경우에는 PEB 버퍼(256)의 데이터를 실시간 전송 처리기(230)의 오디오 출력부(232)로 출력한다(S43)
그러나, 패킷이 확장된 경우에는 패킷의 순서 번호(sequence number)를 SNR(Sequence Number Register)에 저장하고, 전송 부가 방식 필드(O)의 값을 CSR에 저장한다(S44).
이어서, 수신측 부가 전송 처리기(250-2)는 패킷 손실을 검색하기 위해서 Counter와 패킷 순서 번호가 저장된 SNR을 비교한다(S45).
S45의 비교 결과, Counter와 SNR이 같으면 이전 패킷의 손실이 발생하지 않은 경우이므로 S43을 수행하여 PEB 버퍼(256)의 데이터를 실시간 전송 처리기(230)의 오디오 출력부(232)로 출력한다.
그러나 S45의 비교 결과 , Counter와 SNR이 같지 않으면 이전 패킷의 손실이 발생한 경우이므로 부가 전송 방식에 따라 패킷 손실 복구를 수행하게 된다.
이를 위해 먼저, 수신된 패킷의 부가 전송 방식을 저장하고 있는 CSR 값이 0인지 확인한다(S46). CSR 값이 0이면 현재 전송되는 부가 방식이 도 3의 (31) 방식즉, 표준 방식이므로 PEB 버퍼의 데이터 만이 의미를 갖는다. 따라서, 손실 패킷의 복구없이 PEB 버퍼(256)의 데이터를 실시간 전송 처리기(230)의 오디오 출력부(231)에 전달한다.
그러나 S46에서의 확인 결과, CSR 값이 0이 아니면 다시 CSR 값이 1인지 확인한다(S47). CSR 값이 1이면 도 3도의 (32) 방식, 즉 1-순서 중복 방식이므로 REB 버퍼(257)의 데이터를 디코더(259)에 보내어 디코딩하여 실시간 전송 처리기(230)의 오디오 출력부(232)에 전달하여 바로 이전에 손실된 패킷을 복구한다(S48). 그런 다음 S43을 수행하여 PEB 버퍼(256)의 현재 패킷 부분을 데이터를실시간 전송 처리기(230)의 오디오 출력부(231)에 전달한다.
그러나 S47에서의 확인 결과 CSR 값이 1이 아니면 2-순서 중복 방식이므로 가장 최근에 손실된 2개의 패킷을 복구할 수 있다.
이를 위해 먼저 HFR의 값이 1인지 확인한다(S48). HFR은 패킷 손실 복구에 필요한 데이터가 보류 버퍼(257)에 저장되어 있는지를 알려준다.
S48에서의 확인 결과 HFR 값이 1이면 보류 버퍼(258)에 저장되어 있는 REB 데이터를 디코더(259)에 보내어 디코딩하여 실시간 전송 처리기(231)의 오디오 출력부(232)에 전달함으로써 현재 보다 2번째 앞의 손실된 패킷을 복구한다(S49).
S48에서의 확인 결과 HFR 값이 1이 아닌 경우 및 S49를 수행하여 패킷을 복구한 다음에 SNR과 Counter의 차이가 2 이상 인지를 확인한다(S50). 이는 2개 이상 연속 손실이 발생하였는지를 확인하기 위한 것이다.
S50에서의 확인 결과, SNR과 Counter의 차이가 2 보다 작은 경우 현재 수신된 패킷에는 이전에 손실된 패킷을 복구할 부가 데이터가 포함되어 있지 않으므로 패킷 손실의 복구가 불가능하다. 따라서 손실 복구없이 끝낸다.
S50에서의 확인 결과, SNR과 Counter의 차이가 2 이상인 경우, 즉 이전 패킷이 2개 이상 손실되었으면 손실된 패킷 복구를 위해 수신된 패킷을 보류 버퍼(258)에 저장하고, HFR을 1로 세트한다(S51, S52).
HFR 레지스터를 이용하는 이유는 2-순서 중복 방식에서 이미 수신되어 재생 순서를 기다리는 PEB 데이터가 있는가를 검색하여 보류 버퍼(258)의 데이터를 우선 처리함으로써 오디오 데이터의 재생 순서를 지키기 위함이다.
상술한 바와 같은 본 발명은 오디오 스트림 데이터를 통신망에 전달할 때 발생하는 패킷 손실에 의해 수신자의 음성 인식 왜곡 또는 인식 불능을 최소화할 수 있으며, 부가 데이터의 트래픽 오버헤드를 최소화함으로써 네트워크의 부담을 줄일 수 있다.
또한 응용 서비스의 요구에 따라 가변적으로 손실 복구율을 맞출 수 있는 부가 전송 방식을 선택함으로써 실시간 대화형 서비스에서 질 좋은 오디오를 효과적으로 지원할 수 있다.
이상에서 본 발명에 대한 기술사상을 첨부도면과 함께 서술하였지만 이는 본 발명의 바람직한 실시예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한, 이 기술분야의 통상의 지식을 가진 자라면 누구나 본 발명의 기술사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.

Claims (8)

  1. 오디오 데이터에 표준안에 정의된 헤더를 붙여서 RTP 패킷으로 재구성하는 실시간 전송 처리기(230), 수신측으로부터 전송 받은 상기 RTP 패킷에 관한 통신 상의 품질을 피드백하는 전송 품질 정보 처리기(240), 및 오디오 입출력 디바이스 드라이버(210, 220)를 포함하는 멀티미디어 컴퓨터의 오디오 입출력 제어장치에 있어서,
    상기 전송 품질 정보 처리기(240)의 피드백 정보를 이용하여 부가 전송 방식을 설정하고, 실시간 전송 처리기(230)가 구성한 RTP 패킷을 부가 전송 방식에 따라 부가 데이터를 포함하는 새로운 패킷 포맷으로 재구성하여 실시간 전송 처리기(230)에 출력하는 송신측 부가 전송 처리기(250-1)와, 상기 실시간 전송 처리기(230)를 통해 수신된 패킷의 부가 데이터를 이용하여 부가 전송 방식에 따라 패킷 손실을 복구하여 실시간 전송 처리기(230)에 출력하는 수신측 부가 전송 처리기(250-2)를 포함하고,
    상기 송신측 부가 전송 처리기(250-1)는 실시간 전송 처리기(230)에서 입력되는 상기 RTP 패킷을 저장하는 주 인코딩 블록(PEB : primary encoding block) 버퍼(251) 및 보류 버퍼(252)와, 상기 보류 버퍼(252)에 저장된 패킷을 부가 데이터로서 압축하는 인코더(253)와, 상기 인코더(253)에서 압축한 부가 데이터를 저장하는 중복 인코딩 블록(REB : redundant encoding block) 버퍼(254)와, 상기 PEB 버퍼(251)의 데이터 블록과 상기 REB 버퍼(254)의 압축된 부가 데이터를 입력받아 부가 전송 방식에 따라 패킷을 재구성하는 패킷 재구성기(255), 및 부가 전송 방식의 결정과 부가 전송 수행시에 필요한 정보(초기 상태, 현재의 부가 전송 방식, 패킷 손실률, 독립 패킷 손실률, 2-버스트 패킷 손실률, 패킷 손실 허용값, 최근 패킷 순서, 패킷 순서 번호 등)를 저장하는 다수 개의 레지스터를 포함하고,
    상기 수신측 부가 전송 처리기(250-2)는 입력받은 패킷의 주 인코딩 데이터인 PEB 부분을 저장하는 PEB 버퍼(256)와, 입력받은 패킷의 중복 인코딩 데이터인 REB 부분을 저장하는 REB 버퍼(257)와, 이전 패킷이 손실된 경우 손실된 패킷의 복구를 위해 수신된 패킷을 저장하는 보류 버퍼(258)와, 상기 REB 버퍼(275) 또는 보류 버퍼(258)에 저장된 데이터를 디코딩하여 실시간 전송 처리기(230)에 출력하여 패킷 손실을 복구하는 디코더(259), 및 수신된 패킷을 처리하고 패킷 손실을 복구하기 위한 정보(손실 복구 패킷의 존재 유무, 현재의 부가 전송 방식, 송신측 순서 번호, 패킷 순서 번호 등)를 저장하는 다수 개의 레지스터를 포함한 것을 특징으로 하는 멀티미디어 컴퓨터의 오디오 입출력 제어장치.
  2. 삭제
  3. 삭제
  4. 멀티미디어 컴퓨터에서 대화형 오디오 서비스를 위한 오디오 데이터의 부가 전송 방법에 있어서,
    전송 품질 정보 처리기(240)의 피드백 정보에서 추출한 패킷 손실에 대한 품질 정보를 이용하여 부가 전송 방식을 설정하는 과정과, 설정된 부가 전송 방식에 따라 실시간 전송처리기(230)에서 전달된 오디오 데이터에 표준안에 정의된 헤더가 붙여진 RTP 패킷에 부가 데이터를 포함시켜 패킷을 재구성하여 전송하는 부가 전송 수행 과정을 포함하고,
    상기 부가 전송 방식을 설정하는 과정은 전송 품질 정보 처리기(240)로부터 피드백 정보를 전달받아 부가 전송 방식 결정에 필요한 정보를 레지스터에 저장하는 단계와, 패킷 손실률이 허용 손실률 이하인 경우는 부가 전송 방식을 상기 RTP 패킷에 부가 데이터를 포함하지 않는 표준 방식으로 변경하는 단계와, 패킷 손실률이 허용 손실률 보다 큰 경우 독립 손실을 모두 복구할 경우를 대비하여 전체 패킷수, 독립 손실 패킷의 손실률을 계산하는 단계와, 허용 손실률이 패킷 손실률에서 독립 손실 패킷의 손실률을 뺀 값 이상이면, 부가 전송 방식을 첫 번째 후속 패킷에 부가 데이터를 포함시키는 1-순서 중복 방식으로 변경하는 단계, 및 허용 손실률이 패킷 손실률에서 독립 손실 패킷의 손실률을 뺀 값 보다 작으면 부가 전송 방식을 두 번째 후속 패킷에 부가 데이터를 포함시키는 2-순서 중복 방식으로 변경하는 단계를 포함하고,
    상기 부가 전송 수행 과정은 실시간 전송 처리기(230)로부터 상기 RTP 패킷을 수신한 다음 패킷 순서 번호인 Counter를 1 증가 시키는 단계와, 현재의 부가 전송 방식을 저장한 CSR 레지스터 값과 상기 Counter값을 이용하여 현재의 부가 전송 방식을 확인하여 패킷에 부가 데이터를 포함시킬 것인지를 판단하고, 부가시킬 데이터를 선택하는 단계와, 실시간 전송 처리기(230)로부터 수신된 RTP 패킷과 선택된 부가 데이터를 이용하여 패킷을 재구성하는 단계와, 재구성된 패킷을 실시간 전송 처리기(230)를 통하여 네트워크 디바이스(500)에 전달하는 단계, 및 실시간 전송 처리기(230)로부터 수신된 RTP 패킷을 패킷 손실 발생시의 손실 복구를 위해 인코딩하여 저장하는 단계를 포함하는 것을 특징으로 하는 적응형 부가 전송 방법.
  5. 삭제
  6. 삭제
  7. 제 4 항에 있어서, 상기 패킷 재구성 단계에서 재구성되는 패킷은 현재 RTP 프로토콜의 버전 번호(V), 페딩 표시(P), 패킷 확장 여부(X), 플레이 로드 내에 여러 사용자의 데이터가 혼합된 경우 그 사용자 수(CC), 패킷 내의 데이터 내에 구분하고 싶은 특정 데이터의 포함 여부(M), 패킷에 포함된 데이터 필드의 유형(PT), 패킷의 순서 번호(SNP), 데이터가 코덱 보드에서 샘플링한 시각(TPE), 전송측 구분 식별자(SSRC), 현재 전송된 패킷의 부가 전송 방식(O), 앞서 전송한 주 인코딩 데이터와 중복 인코딩 데이터간의 생성시간 차이(TO), 중복 인코딩 데이터의 크기(BL), 중복 인코딩 데이터(REB) 및 주 인코딩 데이터(PEB)를 포함하는 필드들로 구성되는 것을 특징으로 하는 적응형 부가 전송 방법.
  8. 멀티미디어 컴퓨터에서 대화형 오디오 서비스를 위한 오디오 데이터의 패킷 손실 복구 방법에 있어서,
    실시간 전송 처리기(230)로부터 오디오 패킷을 수신하여 패킷의 주 인코딩 데이터(PEB) 부분과 중복 인코딩 데이터(REB) 부분으로 분리하여 각각 PEB 버퍼(256)와 REB 버퍼(257)에 저장하고, 패킷 순서 번호(Counter)를 1 증가시키는 단계와, 수신된 패킷의 확장 여부를 확인하는 단계와, 패킷이 확장되지 않은 경우에는 PEB 버퍼(256)의 데이터를 실시간 전송 처리기(230)의 오디오 출력부(232)에 전달하는 단계와, 패킷이 확장된 경우에는 송신측 패킷 순서 번호를 SNR 레지스터에 저장하고 현재의 부가 정보 전송 방식을 CSR 레지스터에 저장하는 단계와, 패킷 손실 여부를 확인하는 단계와, 패킷 손실이 없는 경우 손실 복구가 불필요하므로 PEB 버퍼(256)의 데이터를 실시간 전송 처리기(230)의 오디오 출력부(232)에 전달하는 단계와, 패킷 손실이 발생한 경우 부가 전송 방식을 확인하는 단계와, 부가 전송 방식이 표준 방식인 경우 복구없이 PEB 버퍼(256)의 데이터를 실시간 전송 처리기(230)의 오디오 출력부(232)에 전달하는 단계와, 부가 전송 방식이 1-순서 중복 방식인 경우 REB 버퍼(256)의 데이터를 디코더(259)에 보내어 디코딩하여 실시간 전송 처리기(230)의 오디오 출력부(232)에 전달하여 손실된 이전 패킷을 복구한 다음, PEB 버퍼(256)의 데이터를 실시간 전송 처리기(230)의 오디오 출력부(232)에 전달하는 단계와, 부가 전송 방식이 2-순서 중복 방식인 경우 손실 복구 패킷의 존재 유무를 표시하는 HFR 레지스터 값을 확인하는 단계와, HFR의 값이 1이면 보류 버퍼(258)에 저장되어 있는 REB 데이터(257)를 디코더(259)에 보내어 디코딩하여 실시간 전송 처리기(230)의 오디오 출력부(232)에 전달함으로써 손실된 이전의 패킷을 복구하는 단계와, HFR의 값이 1이 아닌 경우 및 패킷 손실 복구를 수행한 다음 송신측 순서번호(SNR)와 Counter의 차이를 확인하는 단계, 및 SNR과 Counter의 차이가 2 보다 작은 경우 손실 복구 없이 끝내고, SNR과 Counter의 차이가 2 이상인 경우 패킷 손실 복구를 위해 수신된 패킷을 보류 버퍼(258)에 저장하고 HFR을 1로 세트하는 단계를 포함하는 것을 특징으로 하는 대화형 오디오 서비스를 위한 패킷 손실 복구 방법.
KR1019990046087A 1999-10-22 1999-10-22 대화형 오디오 서비스를 위한 적응형 부가 전송 방법 및 패킷 손실 복구 방법과 이를 위한 멀티미디어 컴퓨터의 오디오 입출력 제어 장치 KR100341391B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990046087A KR100341391B1 (ko) 1999-10-22 1999-10-22 대화형 오디오 서비스를 위한 적응형 부가 전송 방법 및 패킷 손실 복구 방법과 이를 위한 멀티미디어 컴퓨터의 오디오 입출력 제어 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990046087A KR100341391B1 (ko) 1999-10-22 1999-10-22 대화형 오디오 서비스를 위한 적응형 부가 전송 방법 및 패킷 손실 복구 방법과 이를 위한 멀티미디어 컴퓨터의 오디오 입출력 제어 장치

Publications (2)

Publication Number Publication Date
KR20010038203A KR20010038203A (ko) 2001-05-15
KR100341391B1 true KR100341391B1 (ko) 2002-06-21

Family

ID=19616542

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990046087A KR100341391B1 (ko) 1999-10-22 1999-10-22 대화형 오디오 서비스를 위한 적응형 부가 전송 방법 및 패킷 손실 복구 방법과 이를 위한 멀티미디어 컴퓨터의 오디오 입출력 제어 장치

Country Status (1)

Country Link
KR (1) KR100341391B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100594599B1 (ko) 2004-07-02 2006-06-30 한국전자통신연구원 수신단 기반의 패킷 손실 복구 장치 및 그 방법

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100833222B1 (ko) * 2000-03-29 2008-05-28 삼성전자주식회사 멀티미디어 송수신 장치 및 방법
KR100462070B1 (ko) * 2000-10-27 2004-12-17 엘지전자 주식회사 브이오아이피에서의 데이터 손실 방지 장치 및 방법
KR20030017934A (ko) * 2001-08-25 2003-03-04 주식회사 한디지털 인터넷 망에서의 전화통화시 음성데이터 보정방법 및보정칩
KR100794424B1 (ko) * 2001-11-01 2008-01-16 엘지노텔 주식회사 오디오 패킷 스위칭 시스템 및 방법
KR100462024B1 (ko) * 2002-12-09 2004-12-17 한국전자통신연구원 부가 음성 데이터를 이용한 패킷 손실 복구 방법 및 이를이용한 송수신기
KR101930057B1 (ko) 2011-10-28 2018-12-17 한국전자통신연구원 통신 시스템에서 데이터 송수신 장치 및 방법
US9667756B2 (en) 2012-06-05 2017-05-30 Electronics And Telecommunications Research Institute Apparatus and method for transmitting/receiving data in communication system
US9036658B2 (en) 2012-06-29 2015-05-19 Electronics And Telecommunications Research Institute Apparatus and method for transmitting/receiving data in communication system
KR102162350B1 (ko) 2019-02-14 2020-10-06 국방과학연구소 다중 통신 제어 장치 및 방법
CN114499731B (zh) * 2022-01-25 2024-05-28 中电科航空电子有限公司 一种客舱广播音频的以太网同步方法及系统
CN116846038A (zh) * 2023-08-29 2023-10-03 武汉船用电力推进装置研究所(中国船舶集团有限公司第七一二研究所) 一种电池数据的采集与传输方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1993014605A1 (en) * 1992-01-21 1993-07-22 Codex Corporation Rate-based adaptive congestion control system and method for integrated packet networks
US5432787A (en) * 1994-03-24 1995-07-11 Loral Aerospace Corporation Packet data transmission system with adaptive data recovery method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1993014605A1 (en) * 1992-01-21 1993-07-22 Codex Corporation Rate-based adaptive congestion control system and method for integrated packet networks
US5432787A (en) * 1994-03-24 1995-07-11 Loral Aerospace Corporation Packet data transmission system with adaptive data recovery method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100594599B1 (ko) 2004-07-02 2006-06-30 한국전자통신연구원 수신단 기반의 패킷 손실 복구 장치 및 그 방법

Also Published As

Publication number Publication date
KR20010038203A (ko) 2001-05-15

Similar Documents

Publication Publication Date Title
US6574218B1 (en) Method and system for spatially disjoint joint source and channel coding for high-quality real-time multimedia streaming over connection-less networks via circuit-switched interface links
US10014977B2 (en) Systems and methods for transmitting data
CN106656422B (zh) 一种动态调整fec冗余度的流媒体传输方法
US7151754B1 (en) Complete user datagram protocol (CUDP) for wireless multimedia packet networks using improved packet level forward error correction (FEC) coding
JP4405875B2 (ja) エラー訂正用データの生成方法及び生成装置並びに生成プログラム及び同プログラムを格納したコンピュータ読み取り可能な記録媒体
JP4413437B2 (ja) パケット通信のヘッダ圧縮状態の更新
CN111800218B (zh) 一种数据流的传输方法和设备
US6170075B1 (en) Data and real-time media communication over a lossy network
CN101803263B (zh) 用于分组交换传输的可伸缩检错和交叉会话定时同步
JP3512755B2 (ja) 通信方式、通信装置、およびこの通信装置を用いた通信システム
KR100341391B1 (ko) 대화형 오디오 서비스를 위한 적응형 부가 전송 방법 및 패킷 손실 복구 방법과 이를 위한 멀티미디어 컴퓨터의 오디오 입출력 제어 장치
CN101536088B (zh) 用于提供冗余管理的系统和方法
JPH1188463A (ja) データブロックの送信方法
US7009935B2 (en) Transmission over packet switched networks
GB2495929A (en) Transmitter processing control according to jitter buffer status information of the receiver
GB2495927A (en) Optimising transmission parameters and receiver buffer state
CN108696491B (zh) 音频数据的发送处理方法与装置、接收处理方法与装置
GB2495928A (en) Real-time streaming system with interdependent determination of transmission parameters and receiver jitter buffer parameters
US20080320358A1 (en) Encoding and Decoding Method, and Encoding and Decoding Devices with a Two-Stage Error Protection Process
JP2002541724A (ja) デジタル・データ転送方法および装置
JPH11177623A (ja) データ送出装置、データ受信装置及びデータ伝送装置
JPH1198128A (ja) データ伝送装置
JP2000307637A (ja) マルチメディア端末装置及び網間接続装置
JPH1118086A (ja) 画像通信方法および装置
JP2003023462A (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: 20110531

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee