한국어

tc_backup

VoIP DTMF(Dual Tone Multi-Frequency)

1.전송 방식
    1.1 Out of band
    2.2 In band

1.전송 방식

    1.1 Out of band
    signal message를 통해서 DTMF를 전달하여 전송이 정확한 반면 duration(시간)에 대한 정보가 없어서 길고 짧음을 표현 못한다.
    SIP의 경우 Info 메시지를 통해 전달되며 UDP을 사용한다.
    H.323, MGCP도 Out of band 방식이다.

    --------------------------------------------------------------------
    SIP의 Info 메 시지를 통한 DTMF ‘1’ 전달 예
    1) A사 장비

    INFO sip:0263121725@10.1.1.101:5060 SIP/2.0
    Via: SIP/2.0/UDP 10.1.1.101:5060;branch=z9hG4bK.dlsrks00000.313935
    From: <sip:0263121725@hti.com>;tag=1103321111126510229
    To: <sip:0263121726@hti.com:5060>;tag=18479239141126510229
    Call-ID: 18073a010165400013341@10.1.1.101
    CSeq: 22 INFO
    Max-Forwards: 70
    User-Agent: CallGenerator/1.0.0
    Content-Type: application/vnd.networks.digits
    Content-Length:    35
    p=Digit-Collection
    y=Digits
    d=1


    2) B사 장비
    INFO sip:0263121725@10.1.1.101:5060 SIP/2.0
    Via: SIP/2.0/UDP 10.1.1.101:5060;branch=z9hG4bK.dlsrks00000.46695
    From: <sip:0263121725@hti.com>;tag=1103321111126510229
    To: <sip:0263121726@hti.com:5060>;tag=18479239141126510229
    Call-ID: 18073a010165400013341@10.1.1.101
    CSeq: 23 INFO
    Max-Forwards: 70
    User-Agent: CallGenerator/1.0.0
    Content-Type: audio/telephone-event
    Content-Length:     4
    --------------------------------------------------------------------
   
    같은 INFO 메시지를 이용하더라도 그 전달 형식이 vendor 별로 다르므로 상호 연동을 위해 정규화 과정을 거쳐야겠지만, sniffing 관점에서 보면 헤더나 body 데이터로 쉽게 숫자를 유추 가능할 것으로 보인다.

    2.2 In band
    RTP를 통해 메시지를 전달한다.
   
        2.2.1 Bypass
        bypass 방식은 버튼 소리가 미디어 데이터로 전달이 되어 코덱 압축에 따라 손실이 발생하여 DTMF tone이 오인식될 수 있다.
       
        2.2.2 RFC 2833
        RFC 2833 방식은 RTP 패킷에 DTMF의 번호와 볼륨, daration이 명시 되므로 정확한 편이다. 단, UDP 기반이므로 패킷 손실 우려가 있다.

        bypass : 음성코덱 압축(payload type 0)
        RFC 2833 : rtpevent(payload type 101)


        Bypass 방식은 sdp field에 별도의 형식이 필요없으나 rfc2833은 아래와 같은 sdp 형식을 명시하고 있다.
        ============================================================================
        a=fmtp:<format> <list of values>
        a=fmtp:100 0-15,66,70
        Since all implementations MUST be able to receive events 0 through 15, listing these events in the a=fmtp line is OPTIONAL.
         
        The corresponding MIME parameter is "events", so that the following sample media type definition corresponds to the SDP example above:
        audio/telephone-event;events="0-11,66,67";rate="8000"
         
        아래의 메시지는 C사 장비의 rfc2833 에 사용되는 sdp field를 나타내는 것으로 위의 표준안에 나타난 형식과 차이를 보이고 있다.
         
        1) rfc2833으로 DTMF 전송을 할경우 sdp field (C사 장비)
        v=0
        o=0263121725 1126516338 1126516338 IN IP4 10.1.1.101
        s=-
        c=IN IP4 10.1.1.101
        t=0 0
        m=audio 30004 RTP/AVP 4 101
        a=RTPmap:4 G723/8000
        a=RTPmap:101 telephone-event/8000
         
        위의 메시지는 rfc2833 의 방법에 따라 RTP payload type 101로 DTMF를 전송한다는 것을 나타내고 있다.
         
        2) Bypass 방식으로 DTMF 전송을 할경우 sdp field.
        v=0
        o=0263121725 1126516338 1126516338 IN IP4 10.1.1.101
        s=-
        c=IN IP4 10.1.1.101
        t=0 0
        m=audio 30004 RTP/AVP 4
        a=RTPmap:4 G723/8000
         
        위의 sdp field는 g723 코덱외에 별다른 RTP map에 대한 정보가 없으므로 DTMF tone을 g.723으 로 압축하여 보내는 bypass방식을 지칭한다.   
        ============================================================================

        패킷 헤더 부분 예제)
        a=fmtp:100 0-15,66,70
        해석 : payload type 100, 0~ 15번 event, 66, 70번 이벤트 사용

        audio/telephone-event;events="0-11,66,67";rate="8000"
        해석 : 0~ 11번, 66, 67 event 사용, rate=8000(default임)
       
        payload type 101을 많이 봤는데 101번은 Line lockout tone이라는데 자동 절단 기능의미하는 듯




참고 table

Event  encoding (decimal)
_________________________
0--9                0--9
*                     10
#                     11
A--D              12--15
Flash                 16

Table 1: DTMF named events(버튼 값)


Event                            encoding (decimal)
___________________________________________________
Acceptance tone                                  96
Confirmation tone                                97
Dial tone, recall                                98
End of three party service tone                  99
Facilities tone                                 100
Line lockout tone                               101
Number unobtainable tone                        102
Offering tone                                   103
Permanent signal tone                           104
Preemption tone                                 105
Queue tone                                      106
Refusal tone                                    107
Route tone                                      108
Valid tone                                      109
Waiting tone                                    110
Warning tone (end of period)                    111
Warning Tone (PIP tone)                         112

Table 5: Country-specific Line events(Payload type) (http://tools.ietf.org/html/rfc2833#section-3.14)

참조 링크

DTMF 방식에 대한 전반적 이해를 위한 링크
http://gunsystems.egloos.com/10280733

VoIP폰에 대한 테스트 결과
http://www.voiceportal.co.kr/696

Event에 대한 설명을 참고하면 좋음
http://nogada2.egloos.com/1443545

SIP 분석
http://cdral.tistory.com/478


VoIP에서 DTMF 전송 방식 비교.pdfhttp://www.newbroad.co.kr/public_html/index.php?module=Board&action=SiteBoard&iBrdNo=3&sMode=SELECT_FORM

VoIP_DTMF.txt
List of Articles
번호 제목 글쓴이 조회 수sort 추천 수 날짜
180 Programming Tomcat 5.5.27 설치 엔신 18150   2009-05-28
서블릿과 JSP를 다루기 위해 웹서버인 Tomcat을 설치하여야 한다. 윈도우 기준으로 설명한다. 1. 다운로드 톰캣 사이트에서 Tomcat 5.5.27을 다운로드 받을수 있다. 톰캣을 설치하기 위해서는 JRE 또는 JDK가 설치되어 있어야 한다. 설치형이 아니므로 C드라이...  
179 DBMS show variables 변경하기 5.0 기준 서버 변수 변경하기 엔신 18042   2008-03-21
Variable Name Value Type Type autocommit boolean SESSION big_tables boolean SESSION binlog_cache_size numeric GLOBAL bulk_insert_buffer_size numeric GLOBAL | SESSION character_set_client string GLOBAL | SESSION character_set_connection stri...  
178 쉘 계정 제한하기 엔신 17736   2013-07-02
ssht라는 계정에 제한을 걸어서 쉘 접속은 가능하되 임의의 행동을 하지 못하도록 제한 mkdir /usr/ssht_rbin ln /bin/ls /usr/ssht_rbin ln /bin/date /usr/ssht_rbin ln /usr/bin/vi /usr/ssht_rbin ln /bin/cat /usr/ssht_rbin ln /usr/bin/rz /usr/ssht_rb...  
177 ubuntu APM(apache2 php mysql) 설치 방법 엔신 17617   2012-06-11
wiki는 버린다. 데이터는 남겨둔다. ubuntu APM(apache2 php mysql) 설치 방법기본적인 설치 방법 기본적인 설치 방법$sudo apt-get install apache2 $sudo apt-get install php5 libapache2-mod-php5 $sudo apt-get install mysql-server $sudo apt-get insta...  
176 Security Kismet.conf 설정 [2] file 엔신 17128   2009-05-26
 
175 Linux 리눅스_커널(The_Linux_Kernel_한글번역판).pdf 엔신 17038   2007-01-31
리눅스 커널 한글 번역판 오른쪽 버튼 눌러서 다른이름으로 저장 http://home.megapass.co.kr/~darkhi/리눅스_커널(The_Linux_Kernel_한글번역판).pdf  
174 Linux CentOS (Redhat Enterprise)에서 lighttpd 설치 엔신 16902   2008-04-06
UNIX 2007/01/26 00:14 이번에 회사에서 새 서버들을 구매해서 IDC에 들어왔습니다. Dell PowerEdge SC1435로 AMD기반 옵테론 CPU라서 FreeBSD보다는 Linux가 좋을거 같더군요. 전에도 델서버 들어왔었는데 FreeBSD에서 네트워크 디바이스가 정상적으로 동작을...  
173 ETC 의자 파손 ㅜㅜ file 엔신 16666   2010-01-08
 
172 [iphone] decrypt 도구 file 엔신 16587   2012-06-11
 
171 Ambiguous 싸이월드 창 닫힘(닫히는, 꺼지는, 꺼짐) 현상 해결 [1] 엔신 16459   2007-03-06
컴퓨터 새로 사고 윈도우를 최적화 시디로 깔았더니 쾌적한 환경을 구축해줬다 그러나, 싸이월드에서 사진 올리기,기타 등등 에서 익스플로러 창이 다 꺼지는 현상이 발생하였다 바탕화면에 오류 메시지 파일이 생겼는데 거기엔 JVM 오류라고 다시 설치하라고 ...  
170 Ambiguous MBR 디스크와 GPT 디스크 엔신 16443   2008-06-20
윈도즈 비스타에서는 MBR 디스크와 GPT 디스크라는 2가지 파티션 테이블 스키마(partition table Scheme)가 제공된다. 이는 일반 사용자들도 지금보다 한층 고용량화된 하드디스크를 사용하게 될 것을 대비, 2,000Gbyte(2Tbyte) 이상 용량의 하드디스크를 자...  
169 ETC [시외버스] 부천, 안양 <-> 속초,양양 시간표 [1] file 엔신 16397   2009-01-16
 
168 Linux 사이트 비밀번호 입력하기 엔신 15697   2008-05-02
노출이 되서는 안되는 페이지라면 아래 php 구문으로 비밀번호를 입력하게끔 설정한다. 소스에서 가장 상단에 php 내용 삽입해주면 된다.(존재한다면 사이에 넣어주면됨) 로그인하는 페이지라면 상단에 삽입하여 서로 다른 아이디와 비밀번호로 이중 비밀번호...  
167 charset configuration 엔신 15684   2013-04-01
# charset configuration file for DistrRTgen v3.2 by Martin Westergaard (martinwj2005@gmail.com) byte = [] alpha = [ABCDEFGHIJKLMNOPQRSTUVWXYZ] alpha-space = [ABCDEFGHIJKLMNOPQRSTUVWXYZ ] alpha-numeric = [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]...  
» VoIP VoIP DTMF(Dual Tone Multi-Frequency) file 엔신 15676   2010-04-11
VoIP DTMF(Dual Tone Multi-Frequency) 1.전송 방식 1.1 Out of band 2.2 In band 1.전송 방식 1.1 Out of band signal message를 통해서 DTMF를 전달하여 전송이 정확한 반면 duration(시간)에 대한 정보가 없어서 길고 짧음을 표현 못한다. SIP의 경우 Info ...  
165 Ambiguous USB용 Putty(ssh, telnet 클라이언트) 엔신 15532   2006-11-15
ssh, telnet 클라이언트인 Putty의 포터블용(USB) 버전입니다. 설정 내용이 레지스트리에 저장되지 않고 파일로 저장되도록 수정되어서, USB에 넣고 다니기에 편하도록 만들어진 버전입니다. PortaPuTTY - Portable Putty for USB http://socialistsushi.com/p...  
164 Incident Response Dcode - Forensic Date/Time Decoder file 엔신 15531   2009-04-05
 
163 Linux fedora linux 리눅스에서 텔넷(SSH) 한글 깨질 때 [2] 엔신 15406   2008-02-16
SSH로 접속했을 때 한글이 깨져 나온다면.... /etc/sysconfig/i18n 파일을 보시면 SUPPORTED="en_US.UTF-8:en_US:en:ko_KR.UTF-8:ko_KR:ko" SYSFONT="latarcyrheb-sun16" 이런식으로 있을텐데 이것을 다음과 같이 고치면 됩니다. LANG="ko_KR.eucKR" SUPPORTED...  
162 Windows 윈도우XP 시디키 바꾸기 엔신 15285   2007-12-14
시작 > 실행 > regedit 입력 HKey_Local_Machine\Software\Microsoft\WindowsNT\ CurrentVersion\WPAEvents\oobetimer 더블클릭 후 나오는 값을 전체 삭제후 종료 시작 > 실행 > oobe/msoobe /a 입력 제품인증 뜨면 2번째 전화로 인증하는거 누르면 나오는데 ...  
161 CCNA 비스타에서 ahci 모드 작동시키기(965P-DS3) file 엔신 15257   2008-06-01