SIP 레퍼런스
SIP 레퍼런스
ElevenLabs Agents에서 SIP 트렁킹을 구성할 때 사용하는 SIP, 네트워킹 및 오디오 용어집입니다.
개요
SIP 트렁킹은 기존 전화 인프라를 ElevenLabs Agents에 연결합니다. 이를 구성하려면 전문 용어가 사용되는 프로토콜, 네트워크 설정, 오디오 형식을 다뤄야 합니다.
이 페이지에서는 이러한 용어를 쉽게 설명합니다. SIP 트렁킹 가이드를 읽거나 연결 문제를 해결할 때 참고 자료로 활용하세요.
용어는 다음 카테고리로 분류되어 있습니다.
- 프로토콜 — 시그널링과 오디오를 전송하는 표준입니다.
- 전송 및 네트워킹 — 패킷이 시스템 간에 이동하는 방식입니다.
- 인프라 구성 요소 — 통화를 처리하는 시스템입니다.
- 통화 시그널링 — 통화를 설정하고 종료하는 메시지입니다.
- 인증 및 보안 — 연결을 확인하고 암호화하는 방식입니다.
- 오디오 및 코덱 — 음성이 인코딩되고 전송되는 방식입니다.
- 주소 지정 및 라우팅 — 통화가 목적지를 찾는 방식입니다.
- ElevenLabs 구성 — ElevenLabs 대시보드에 특화된 설정입니다.
프로토콜
SIP (세션 시작 프로토콜)
음성 통화와 같은 실시간 통신 세션을 시작, 수정, 종료하는 시그널링 프로토콜입니다. SIP는 누가 누구에게 통화하는지와 오디오를 교환하는 방식을 협상하지만, 오디오 자체를 전송하지는 않습니다. RFC 3261에 정의되어 있습니다.
SDP (세션 설명 프로토콜)
통화의 미디어를 설명하는 SIP 메시지 내 텍스트 형식입니다. 각 측에서 지원하는 코덱, 오디오 스트림의 IP 주소와 포트, 암호화 매개변수를 설명합니다. 두 엔드포인트는 오디오 전송 전에 SDP를 사용해 공통 구성을 합의합니다.
RTP (실시간 전송 프로토콜)
SIP가 통화를 설정한 후 실제 통화 오디오를 전송하는 프로토콜입니다. RTP 패킷은 연속적인 스트림으로 이동하며 지연과 손실에 민감하므로, 오디오 품질은 네트워크 상태에 따라 달라집니다.
SRTP (보안 RTP)
RTP의 암호화된 버전입니다. 미디어 암호화가 활성화되면 오디오 스트림은 전송 중 가로챌 수 없도록 SRTP로 보호됩니다. 암호화된 미디어가 작동하려면 두 엔드포인트 모두 SRTP를 지원해야 합니다.
RTCP (RTP 제어 프로토콜)
패킷 손실 및 지터 등의 통계를 보고하여 엔드포인트가 통화 품질을 모니터링할 수 있도록 하는 RTP의 보조 프로토콜입니다.
전송 및 네트워킹
UDP (사용자 데이터그램 프로토콜)
전송 보장이나 순서를 보장하지 않고 패킷을 보내는 빠른 비연결형 전송 방식입니다. 실시간 음성에서는 완벽한 전송보다 낮은 지연 시간이 더 중요하기 때문에 RTP 오디오는 UDP를 통해 전송됩니다.
ElevenLabs에서 SIP 시그널링을 위한 UDP 전송은 실험적 기능입니다. 프로덕션 트래픽에는 TCP 또는 TLS를 사용하고, UDP는 테스트용으로만 선택하세요.
TCP (전송 제어 프로토콜)
순서가 보장되는 안정적인 전송을 보장하는 연결 지향형 전송 방식입니다. ElevenLabs는 포트 5060에서 SIP 시그널링용 TCP를 지원합니다.
TLS (전송 계층 보안)
TCP 상에서 실행되는 암호화 계층입니다. TLS 전송은 SIP 시그널링을 암호화하므로 전송 중 자격 증명과 통화 메타데이터를 읽을 수 없습니다. ElevenLabs는 포트 5061에서 시그널링용 TLS를 지원합니다.
MTU (최대 전송 단위)
네트워크 링크가 더 작은 조각으로 분할하지 않고 전송할 수 있는 최대 패킷 크기(바이트)입니다. UDP를 통한 SIP 메시지가 MTU를 초과하면 조각화되거나 유실될 수 있으며, 이는 통화 설정 실패를 유발할 수 있습니다. TCP 또는 TLS를 통해 전송되는 SIP 시그널링은 이러한 전송 방식이 큰 메시지를 안정적으로 처리하므로 이 문제를 방지합니다.
NAT (네트워크 주소 변환)
라우터가 사설 네트워크의 여러 장치에서 하나의 공용 IP 주소를 공유하도록 하는 기술입니다. NAT는 RTP 오디오가 올바른 장치에 도달하지 못하게 할 수 있으며, 이는 단방향 오디오 또는 오디오 누락의 일반적인 원인입니다.
지연 시간
오디오가 전송된 시점과 수신되는 시점 사이의 지연입니다. 지연 시간이 길면 각 측이 상대방의 음성을 듣기까지 더 오래 기다리게 되어 대화가 부자연스럽게 느껴집니다.
지터
오디오 패킷의 도착 시간 변동입니다. 전체 지연 시간이 허용 범위여도 지터가 크면 오디오가 끊기거나 왜곡됩니다.
패킷 손실
끝내 도착하지 않는 오디오 패킷의 비율입니다. RTP는 유실된 패킷을 재전송하지 않으므로, 적은 양의 패킷 손실도 오디오 품질을 저하시킵니다.
포트
특정 서비스를 식별하는 IP 주소의 번호가 지정된 엔드포인트입니다. SIP 시그널링은 TCP에 포트 5060, TLS에 포트 5061을 사용하며 RTP 미디어는 일반적으로 동적으로 할당되는 넓은 범위의 포트를 사용합니다.
인프라 구성 요소
SBC (세션 경계 컨트롤러)
SIP 트래픽을 관리하고 보호하기 위해 네트워크 경계에 위치하는 장치 또는 서비스입니다. SBC는 무단 액세스 방지, 프로토콜을 서로 다르게 구현하는 시스템 간 SIP 메시지 정규화, NAT 통과 관리 등의 작업을 처리합니다. 많은 SIP 트렁크 제공업체는 자신의 네트워크와 고객 네트워크 사이에 SBC를 배치합니다.
PBX (사설 교환기)
조직 내부의 통화를 라우팅하고 외부 회선에 연결하는 사설 전화 시스템입니다. SIP를 지원하는 PBX는 SIP 트렁크를 통해 ElevenLabs에 연결할 수 있습니다.
SIP 트렁크
물리적 전화선 대신 인터넷을 통해 여러 동시 통화를 전송하는 전화 시스템과 음성 서비스 간의 가상 연결입니다. SIP 트렁크는 PBX 또는 제공업체를 ElevenLabs에 연결합니다.
통화 시그널링
SIP INVITE
새 통화를 요청하는 SIP 메시지입니다. INVITE에는 대상 식별자와 발신자의 미디어 기능을 설명하는 SDP가 포함됩니다.
200 OK
요청이 성공했음을 확인하는 SIP 응답입니다. INVITE에 대한 200 OK에는 응답 측의 SDP와 통화를 처리하는 정확한 서버를 식별하는 Contact 주소가 포함됩니다.
BYE
설정된 통화를 종료하는 SIP 메시지입니다. BYE는 통화를 처리한 동일한 서버에 도달하도록 200 OK에서 반환된 Contact 주소로 전송해야 합니다.
Contact 헤더
동일한 통화 내의 후속 메시지를 위한 정확한 서버와 주소를 식별하는 SIP 응답의 필드입니다. ElevenLabs는 공유 sip.rtc.elevenlabs.io 주소 뒤에 있는 여러 서버에서 SIP 트래픽을 처리하므로, BYE와 같은 후속 요청을 Contact 주소 대신 해당 공유 주소로 전송하면 다른 서버에 도달할 수 있습니다.
다이얼로그
두 엔드포인트가 통화 기간 동안 유지하는 공유 상태입니다. BYE와 같은 메시지가 다이얼로그 기록이 없는 서버에 도달하면 서버는 이를 거부합니다.
응답 코드
HTTP 상태 코드와 유사하게 SIP 요청의 결과를 나타내는 세 자리 숫자입니다. 1xx 범위의 코드는 임시 응답으로 진행 상태를 보고합니다. 100 (Trying)은 요청이 수신되어 처리 중임을 확인하고, 180 (Ringing)은 대상에 알림이 전달되고 있음을 나타냅니다. 최종 응답은 결과를 보고합니다. 200 (OK)은 성공을 의미하고, 401 및 407은 인증이 필요함을 나타내며, 481은 서버에 요청과 일치하는 다이얼로그가 없음을 의미합니다.
인증 및 보안
다이제스트 인증
비밀번호를 일반 텍스트로 전송하지 않고 사용자 이름과 비밀번호를 사용해 연결을 확인하는 인증 방식입니다. ElevenLabs는 고정 IP 주소에 의존하지 않으므로 다이제스트 인증을 권장합니다.
ACL (액세스 제어 목록)
신뢰할 수 있는 IP 주소를 허용 목록에 추가하는 방식의 인증 방법입니다. ACL 인증에서는 승인된 소스 주소의 SIP 트래픽만 수락합니다. IP 주소가 변경되는 경우 관리가 더 어려울 수 있습니다.
미디어 암호화
SRTP를 사용해 RTP 오디오 스트림에 적용되는 보호 기능입니다. ElevenLabs는 세 가지 설정을 제공합니다. Disabled (암호화 없음), Allowed (양쪽에서 지원할 때 암호화), Required (암호화할 수 없는 통화 거부)입니다.
인증서
TLS 핸드셰이크 중 서버의 신원을 증명하는 X.509 디지털 문서입니다. 연결을 수락하는 측은 TLS 서버로 동작하며 인증서를 제시하고, 연결을 여는 측은 TLS 클라이언트로 동작하며 호스트 이름과 만료일을 확인해 신뢰할 수 있는 인증 기관을 기준으로 이를 검증합니다. 역할은 통화 방향에 따라 달라집니다.
- ElevenLabs로의 인바운드 통화: 사용자 시스템이 연결을 열므로 ElevenLabs가 TLS 서버로 동작하며
sip.rtc.elevenlabs.io용 인증서를 제시하고, 사용자 시스템이 이를 검증합니다. - ElevenLabs에서의 아웃바운드 통화: ElevenLabs가 연결을 열므로 SIP 서버 또는 SBC가 TLS 서버로 동작하며, ElevenLabs가 검증할 수 있는 유효하고 신뢰할 수 있는 인증서를 제시해야 합니다.
암호화 스위트
TLS 연결이 키를 교환하고, 데이터를 암호화하며, 무결성을 확인하는 데 사용하는 알고리즘 집합입니다. 핸드셰이크 중 TLS 클라이언트는 지원하는 암호화 스위트를 제안하고 TLS 서버는 양쪽이 공유하는 하나를 선택합니다. ElevenLabs는 TLS 1.2 이상을 요구합니다. ElevenLabs로의 인바운드 통화에서는 ElevenLabs(TLS 서버)가 스위트를 선택하고, ElevenLabs에서의 아웃바운드 통화에서는 사용자 시스템(TLS 서버)이 이를 선택합니다. 양쪽이 최신 암호화 스위트를 하나 이상 공유해야 하며, 그렇지 않으면 통화가 연결되기 전에 핸드셰이크가 실패합니다.
오디오 및 코덱
코덱
전송을 위해 오디오를 압축하고 반대편에서 압축을 해제하는 알고리즘입니다. 통화에 오디오가 있으려면 두 엔드포인트가 공통 코덱을 지원해야 합니다.
G711
8 kHz 샘플 레이트로 오디오를 전송하는 널리 지원되는 비압축 코덱입니다. 전화 시스템 전반에서 가장 호환성이 높은 선택지입니다.
G722
16 kHz 샘플 레이트로 오디오를 전송하는 광대역 코덱으로, 두 엔드포인트가 지원하는 경우 G711보다 더 선명한 음성을 제공합니다.
샘플 레이트
오디오를 초당 측정하는 횟수이며 킬로헤르츠(kHz)로 표시됩니다. ElevenLabs의 SIP 배포는 8 kHz의 G711 또는 16 kHz의 G722로 오디오를 송수신합니다. 다른 레이트를 사용하는 시스템은 오디오를 리샘플링해야 합니다.
DTMF (듀얼 톤 다중 주파수)
자동화된 메뉴를 탐색하는 데 사용되는 전화 키패드의 키를 누를 때 생성되는 톤입니다. 에이전트가 키패드 숫자를 수신하는 방법은 DTMF 입력을, 에이전트가 DTMF를 전송하는 방법은 키패드 터치 톤 재생을 참조하세요.
주소 지정 및 라우팅
SIP URI
SIP 대상을 연결하는 데 사용되는 주소로, sip:identifier@domain:port 형식으로 작성됩니다. 예를 들어 sip:+19991234567@sip.rtc.elevenlabs.io:5060은 통화를 식별자 +19991234567로 라우팅합니다. 통화를 라우팅하려면 식별자가 필요합니다.
E.164
선행 +, 국가 코드, 가입자 번호로 구성된 국제 전화번호 형식 표준입니다. 예: +15551234567입니다. 형식은 SIP URI와 가져온 전화번호 간에 일치해야 합니다.
NAPTR 및 SRV 레코드
SIP 시스템이 도메인에 사용할 서버, 전송 방식, 포트를 검색할 수 있도록 하는 DNS 레코드 유형입니다. ElevenLabs는 RFC 3263를 준수하는 서버 검색을 위한 NAPTR 및 SRV 레코드를 게시합니다.
ElevenLabs 구성
전송 유형
대시보드에서 SIP 시그널링에 선택하는 프로토콜입니다. ElevenLabs는 TCP (포트 5060)와 TLS (포트 5061)를 지원합니다. TLS는 시그널링을 암호화하므로 프로덕션 환경에 권장됩니다.
인바운드 구성
전송 유형과 수신 통화에 적용되는 미디어 암호화를 포함하여 SIP 트렁크에서 도착하는 통화가 ElevenLabs에 도달하는 방식을 제어하는 설정입니다.
아웃바운드 구성
SIP INVITE가 전달되는 Address (sip: 접두사 없는 호스트 이름 또는 IP 주소)를 포함하여 ElevenLabs가 사용자 시스템으로 통화를 전송하는 방식을 제어하는 설정입니다.
사용자 지정 헤더
라우팅, 식별 또는 제공업체별 요구사항을 위해 통화에 추가할 수 있는 X- 접두사가 붙은 SIP 헤더 필드입니다. 인바운드 사용자 지정 헤더는 대화에서 동적 변수로도 노출됩니다. 아웃바운드 INVITE 헤더는 outbound_trunk_config의 정적 headers 필드로 구성합니다.
사용자 간 정보(UUI)
SIP User-to-User 헤더(RFC 7433)에서 교환되는 작은 애플리케이션 페이로드로, Talkdesk 및 Genesys Cloud와 같은 컨택센터 플랫폼에서 일반적으로 사용됩니다. 인바운드 통화에서 INVITE에 User-to-User 헤더가 포함되어 있으면 해당 값은 에이전트에 두 개의 동적 변수로 노출됩니다. {{sip_uui_raw}} (원본 헤더 값) 및 {{sip_uui_data}} (purpose=isdn-uui가 헤더에 포함된 경우 16진수 디코딩 후 프로토콜 식별자 옥텟을 제거한 디코딩된 페이로드)입니다. 아웃바운드 통화에서 UUI는 전송 규칙의 uui 설정을 통해 SIP URI를 대상으로 하는 SIP REFER 전송에 추가됩니다. 자세한 내용은 번호로 전송을 참조하세요.
속성을 헤더로 매핑
BYE 요청을 위한 동적 변수 이름을 SIP 헤더 이름에 매핑하는 inbound_trunk_config 및 outbound_trunk_config의 API 전용 설정입니다. 각 키는 동적 변수 이름이고 각 값은 통화 종료 시 포함할 헤더 이름입니다. 헤더 값은 대화 종료 시점의 변수 최종값입니다. 동적 변수의 BYE 헤더를 참조하세요.
원격 도메인
ElevenLabs가 시작하는 후속 연결(예: BYE 또는 REFER)에서 TLS 인증서를 검증할 때 ElevenLabs가 허용하는 도메인을 나열하는 전화번호 설정입니다. ElevenLabs는 호스트 이름이 아닌 최상위 Via 헤더에서 가져온 IP 주소에 연결하는 경우가 많으므로, 호스트 이름만으로 인증서를 일치시킬 수 없습니다. 수신한 인증서가 유효한 도메인 중 하나가 구성된 원격 도메인과 일치하면 검증이 성공하며, 그렇지 않으면 실패합니다. 후속 연결을 참조하세요.
고정 IP SIP 서버
보안 정책상 IP 허용 목록이 필요한 고객에게 고정 IP 범위의 SIP 엔드포인트를 제공하는 엔터프라이즈 옵션입니다. 자세한 내용은 SIP 트렁킹 가이드를 참조하세요.