KR20020076578A - 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법 - Google Patents
음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법 Download PDFInfo
- Publication number
- KR20020076578A KR20020076578A KR1020010016549A KR20010016549A KR20020076578A KR 20020076578 A KR20020076578 A KR 20020076578A KR 1020010016549 A KR1020010016549 A KR 1020010016549A KR 20010016549 A KR20010016549 A KR 20010016549A KR 20020076578 A KR20020076578 A KR 20020076578A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- voice
- transmission
- task
- transmitted
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9084—Reactions to storage capacity overflow
- H04L49/9089—Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout
- H04L49/9094—Arrangements for simultaneous transmit and receive, e.g. simultaneous reading/writing from/to the storage element
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법에 관한 것으로, 종래의 음성패킷 전송태스크는 일정시간 간격으로 음성패킷을 인코딩하여 전송하도록 하고 있으나, 실시간 운용 시스템에서 우선순위가 높은 다른 태스크나 인터럽트에 의해 음성 패킷이 출력되지 못하는 경우가 있는데, 이러한 상태가 반복되어 데이터가 버퍼에 쌓이게 되면, 통화 개시 후 시간이 지남에 따라 지연이 증가하게 되어 자연스런 대화를 할 수 없게 되는 문제점이 있었다. 따라서, 본 발명은 음성 패킷의 전송 루틴과 수신 루틴을 하나의 태스크에서 이루어지도록 구성함으로써, 종래와 같이 전송 태스크와 수신 태스크가 따로 존재할 때 두 루틴이 동시에 호출될 경우 발생하던 문제를 방지할 수 있도록 하고, 버퍼에 데이터가 쌓여 있을 경우 그 데이터가 모두 전송될 때 까지 패킷 전송동작을 반복함으로써, 전송 지연이 발생하지 않도록 하여 통화 품질을 향상시킬 수 있도록 하는 효과가 있다.
Description
본 발명은 인터넷 망을 이용한 실시간 음성 전송방법에 관한 것으로, 특히 음성 지연을 최소화하여 끊김없는 자연스런 통신이 이루어질 수 있도록 하는 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법에 관한 것이다.
최근, 인터넷의 사용이 폭발적으로 증가하면서 그에 관련된 다양한 기술이 개발되고 있으며, 특히 VoIP 기술을 이용하여 인터넷 망을 통해서도 실시간 음성 및 화상 통화가 가능하게 되었다.
일반적으로, 인터넷 망을 통해서 음성 및 화상 통화를 하기 위해서는, 사용자의 피씨(PC)에 인터넷폰 통화 프로그램을 인스톨하거나, 상기 음성 및 화상 통화 서비스를 제공하는 홈페이지에 접속한 후 헤드셋을 통해서 해당 서비스를 이용하는 것이다.
이때, 상기 인터넷폰 통화 프로그램이나 그러한 통화 서비스를 제공하는 사이트의 서버에는 RTP(Realtime Transport Protocol) 태스크(Task)가 구비됨으로써, 음성 송/수신을 수행할 수 있도록 한다.
참고로, 상기 RTP(Realtime Transport Protocol)(실시간 전송 규약)란 영상, 소리 등과 같은 신호의 코딩된 데이터로 인터넷을 통해 실시간으로 전송할 수 있는 기술을 표준화한 것을 의미하는 것이다.
그럼, 종래 인터넷 폰의 동작을 도1에 도시된 구성도를 참조하여 설명하기로한다.
도1은 종래의 음성 패킷 전송/수신 태스크에 의한 음성 통신 방법을 설명하기 위한 개념적 구성도로서, 이에 도시된 바와 같이 마이크(4)를 통해 입력된 사용자의 음성은 TDM(Time Division Multiplexer) 인터페이스부(3)를 통해 일정시간 간격으로 패킷으로 정형화되고, 이를 음성패킷 전송태스크(6)에 의해 인터넷 망(IP Network)(1)으로 출력한다.
다음, 인터넷 망(1)을 통해 수신된 상대측의 음성은 음성패킷 수신태스크(7)에 의해 입력된 순서에 따라 지터버퍼(2)에 저장된 후, TDM 인터페이스부(3)를 통해 일정시간 간격으로 인출되어 스피커(5)로 출력하도록 되어 있다.
여기서, 상기 음성패킷 수신태스크에 대한 동작을 보다 구체적으로 살펴보면, 도2의 (a)에 도시된 바와 음성패킷의 수신을 기다리다가(S11) 수신되는 즉시 RTP 디코더에 의해 이 음성 데이터를 지터버퍼에 쌓아준다(S12).
이때, 지터 버퍼(Jitter Buffer)는 선입선출(FIFO : First In First Out) 방식으로 동작하며, 상기 저장해 둔 음성 데이터를 일정한 시간 간격으로 TDM 인터페이스부(3)로 보내준다.
다음, 음성패킷 전송태스크는 도2의 (b)에 도시된 바와 같이 타이머 인터럽트에 의해 구동되는데, TDM 인터페이스부(3)로부터 음성 데이터를 받아서 IP 네트워크로 전송하는 역할을 하며 타이머 인터럽트가 걸리면(S21) RTP 엔코더가 구동되어 음성 데이터에 12바이트의 RTP 헤더를 붙여 IP 네트워크로 패킷 전송이 이루어진다(S22).
그러나, 상기 음성패킷 전송태스크(6)는 일정시간 간격으로 음성패킷을 인코딩하여 전송하도록 하고 있으나, 실시간 운용 시스템에서 우선순위가 높은 다른 태스크나 인터럽트에 의해 음성 패킷이 출력되지 못하는 경우가 있는데, 이러한 상태가 반복되어 데이터가 버퍼에 쌓이게 되면, 통화 개시 후 시간이 지남에 따라 지연이 증가하게 되어 자연스런 대화를 할 수 없게 되는 문제점이 있었다.
따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 창출한 것으로, 음성패킷 전송/수신 태스크를 하나의 태스크로 재구성함으로써, 음성패킷 전송태스크와 수신태스크가 동시에 호출되어 야기되는 문제점을 해결하고, 일정 시간마다 수행하는 음성패킷 전송 시도를 버퍼에 누적된 패킷의 수에 따라 여러번 반복 수행함으로써, 장시간 통화에 따른 전송 지연 증가를 방지하는 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법을 제공함에 그 목적이 있다.
도 1은 종래의 음성 패킷 전송/수신 태스크에 의한 음성 통신 방법을 설명하기 위한 개념적 구성도.
도 2a는 종래의 음성패킷 수신태스크에 대한 동작 설명을 위해 보인 프로그램 루틴 예시도.
도 2b는 종래의 음성패킷 전송태스크에 대한 동작 설명을 위해 보인 프로그램 루틴 예시도.
도 3은 발명의 RTP 태스크에 의한 음성 통신 방법을 설명하기 위한 개념적 구성도.
도 4는 본 발명에 의한 RTP 태스크의 동작 과정을 보인 순서도.
이와 같은 목적을 달성하기 위한 본 발명은, 전송할 데이터나 수신할 데이터에 의한 이벤트 발생 여부를 감시하는 제1단계와; 이벤트 발생시 해당 이벤트가 전송 이벤트인지 수신 이벤트인지를 판단하는 제2단계와; 상기 판단 결과, 전송 이벤트인 경우 송신측 버퍼에 있는 데이터를 정해진 규약에 따라 헤더 등을 부가해 패킷화하여 네트워크로 전송하는 제3단계와; 상기 판단 결과, 수신 이벤트인 경우 IP 네트워크로부터 데이터를 수신하여 수신측 버퍼에 순차로 저장하고, RTP_디코딩한 후 스피커 등의 출력수단을 통해 출력하는 제4단계로 이루어진 것을 특징으로 한다.
이하, 본 발명에 따른 일실시예를 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.
도3은 본 발명의 RTP 태스크에 의한 음성 통신 방법을 설명하기 위한 개념적 구성도로서, 이에 도시된 바와 같이 마이크(4)를 통해 입력된 사용자의 음성은 TDM 인터페이스부(3)를 통해 일정시간 간격으로 패킷으로 정형화되고, 이를 RTP 태스크(100)에 의해 인터넷 망(IP Network)(1)으로 전송하고, 또한 인터넷 망(1)을 통해 수신된 상대측의 음성도 역시 입력된 순서에 따라 RTP 태스크(100)에 의해 지터버퍼(2)에 저장된 후, TDM 인터페이스부(3)를 통해 일정시간 간격으로 인출되어 스피커(5)로 출력하도록 되어 있다.
이하, 본 발명에서는 상기 IP 네트워크(1)로부터 음성 패킷(Voice Packet) 수신을 위한 수신태스크와 IP 네트워크로 음성 패킷 전송을 위한 전송태스크를 통틀어 RTP 태스크라 부른다.
상술한 바와 같이 본 발명에서는 음성패킷의 전송 및 수신 루틴을 하나의 태스크(RTP 태스크)에 의해 수행하도록 구성함으로써, 종래에 전송 루틴과 수신 루틴이 동시에 호출될 경우 발생하던 문제점을 방지할 수 있도록 한다.
여기서, 상기 RTP 태스크에 대한 동작을 보다 구체적으로 살펴보면, 도4에 도시된 바와 감시루틴에 의해 전송할 데이터나 수신한 데이터가 있는지 감시를 하고 있다가(S31) 이벤트가 발생하면 해당하는 루틴을 수행하도록 한다.
먼저, 전송할 데이터가 있는 경우(S32), 버퍼에 데이터가 남아 있으면 버퍼에 남아 있는 데이터를 모두 전송할 때 까지 반복적으로 네트워크로 데이터 전송을 시도한다(S33). 이때 RTP_엔코더를 통해 RTP에서 정한 규약에 따른 헤더를 붙여서 보낸다(S34).
여기서, 상기 데이터 전송 루틴이 종래 기술과 다른점은 종래의 경우, 버퍼에 데이터가 쌓여 있을 경우에도 일정 시간 간격으로 하나의 음성 패킷만을 전송하도록 하고 있으나, 본 발명에서는 패킷 전송시에 버퍼에 데이터가 쌓여 있으면 그 데이터가 모두 전송될 때 까지 반복해서 패킷 전송을 시도하는 것이다.
다음, 수신할 데이터가 있는 경우는(S35) IP 네트워크로부터 데이터를 수신하여(S36) RTP_디코더를 통해 지터 버퍼에 음성 데이터를 순차로 저장해 준다(S37).
이때, 지터버퍼에 있는 데이터는 선입선출(FIFO) 방식으로 타이머 인터럽트에 의해 TDM 인터페이스부(3)로 보내진다.
이상에서 설명한 바와 같이 본 발명 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법은 음성 패킷의 전송 루틴과 수신 루틴을 하나의 태스크에서 이루어지도록 구성함으로써, 종래와 같이 전송 태스크와 수신 태스크가 따로 존재할 때 두 루틴이 동시에 호출될 경우 발생하던 문제를 방지할 수 있도록 하고, 버퍼에 데이터가 쌓여 있을 경우 그 데이터가 모두 전송될 때 까지 패킷 전송동작을 반복함으로써, 전송 지연이 발생하지 않도록 하여 통화 품질을 향상시킬 수 있도록 하는 효과가 있다.
Claims (2)
- 전송할 데이터나 수신할 데이터에 의한 이벤트 발생 여부를 감시하는 제1단계와; 이벤트 발생시 해당 이벤트가 전송 이벤트인지 수신 이벤트인지를 판단하는 제2단계와; 상기 판단 결과, 전송 이벤트인 경우 송신측 버퍼에 있는 데이터를 정해진 규약에 따라 헤더 등을 부가해 패킷화하여 네트워크로 전송하는 제3단계와; 상기 판단 결과, 수신 이벤트인 경우 IP 네트워크로부터 데이터를 수신하여 수신측 버퍼에 순차로 저장하고, RTP_디코딩한 후 스피커 등의 출력수단을 통해 출력하는 제4단계로 이루어진 것을 특징으로 하는 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법.
- 제1항에 있어서, 상기 제3단계의 음성패킷 전송 과정은 버퍼에 전송할 데이터가 남아있는 경우, 그 데이터가 모두 전송될 때 까지 패킷 전송동작을 반복 수행하도록 이루어진 것을 특징으로 하는 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020010016549A KR20020076578A (ko) | 2001-03-29 | 2001-03-29 | 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020010016549A KR20020076578A (ko) | 2001-03-29 | 2001-03-29 | 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20020076578A true KR20020076578A (ko) | 2002-10-11 |
Family
ID=27699150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020010016549A KR20020076578A (ko) | 2001-03-29 | 2001-03-29 | 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20020076578A (ko) |
-
2001
- 2001-03-29 KR KR1020010016549A patent/KR20020076578A/ko not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7548539B2 (en) | Method and apparatus for Voice-over-IP call recording | |
US8094667B2 (en) | RTP video tunneling through H.221 | |
US7873035B2 (en) | Method and apparatus for voice-over-IP call recording and analysis | |
EP1443743B1 (en) | Using communication network statistics for jitter buffer and echo canceller control | |
EP1113645A2 (en) | A method and device for timing the processing of data packets | |
JP4515979B2 (ja) | Ip電話機 | |
US6996059B1 (en) | Increasing duration of information in a packet to reduce processing requirements | |
WO2006053298A1 (en) | Data transport between a media gateway and a media server | |
CN100477649C (zh) | 音频网关装置 | |
US7099280B1 (en) | Method and system for logging voice quality issues for communication connections | |
US7460523B2 (en) | Client-server architecture for the delivery of broadband services | |
JP2002077245A (ja) | Ipゲートウェイ装置 | |
JP3133296B2 (ja) | 通信装置及びdtmf転送方法 | |
US7542465B2 (en) | Optimization of decoder instance memory consumed by the jitter control module | |
KR20020076578A (ko) | 음성전달 인터넷 프로토콜을 이용한 실시간 음성 전송방법 | |
CA2479439A1 (en) | Method and system for processing voice traffic from a multi-channel link into a voip network over a broadband network | |
US20080123535A1 (en) | Maintenance apparatus, IP telephone system, and maintenance data transmission method | |
KR100440063B1 (ko) | 아이피비엑스 시스템에서의 브이오아이피 서비스 장치 및방법 | |
US20050254504A1 (en) | Gateway apparatus | |
US7826440B1 (en) | Quality of service in a remote telephone | |
JP2005266411A (ja) | 音声圧縮方法および電話器 | |
KR100376133B1 (ko) | 데이터 전송 지연 방지 방법 | |
KR100556726B1 (ko) | 아이피네트워크를통한음성통신의수신음성패킷간격조절방법 | |
US7085265B2 (en) | Mapping between TDM channels and packets | |
JP2004336144A (ja) | マルチメディア情報通信システムとその構内交換装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |