SIP: 실시간 멀티미디어 세션을 제어하는 시그널링 프로토콜

SIP의 메시지 구조, 요청·응답 코드, User Agent와 프록시 서버 역할, 등록 및 호출 흐름을 정리한다.

2026-08-14 · 최초 발행 2025-08-10

통화 자체가 아니라 연결 과정을 제어하는 프로토콜

SIP(Session Initiation Protocol)는 인터넷에서 사용자 간 실시간 멀티미디어 통신 세션을 만들고, 변경하고, 끝내기 위한 응용 계층 시그널링 프로토콜이다. 인터넷 전화(VoIP), 화상 회의, 인스턴트 메시징처럼 통신 상대와 세션 조건을 먼저 조율해야 하는 서비스에서 사용된다.

SIP는 통신할 지능형 단말을 식별하고 위치를 파악하는 기능을 제공한다. HTTP와 SMTP처럼 텍스트로 메시지를 구성하며, Request/Response 구조로 동작한다. TCP와 UDP 모두에서 사용할 수 있고, 이메일 주소와 비슷한 SIP URL을 쓰므로 IP 주소에 직접 묶이지 않는다. 다른 인터넷 프로토콜과 조합해 확장 가능한 서비스를 구성하기에도 적합하다.

음성·영상·이벤트 통지에 쓰이는 SIP

SIP가 세션 제어를 맡는 대상은 음성 통화에 한정되지 않는다. 인터넷 전화와 화상 회의, 음성 메일, 이벤트 통지, 인스턴트 메시징, 멀티미디어 스트리밍, 실시간 게임에 적용할 수 있다.

미디어 자체의 전달과 세션 제어는 구분된다. SIP는 상대를 찾고 연결 절차를 조율하는 역할을 맡으며, 미디어 정보는 SDP(Session Description Protocol) 같은 프로토콜로 전달할 수 있다.

텍스트 메시지에 담기는 요청과 응답

SIP 메시지는 시작 줄, 헤더, 메시지 본문으로 구성된다.

시작 줄은 요청인지 응답인지에 따라 형식이 나뉜다. 요청 메시지는 신호명령 요청URI SIP버전 형식을, 응답 메시지는 SIP버전 상태코드 응답구 형식을 사용한다.

  • 요청 예: INVITE sip:179@b113.local SIP/2.0
  • 응답 예: SIP/2.0 200 OK

헤더에는 메시지에 관한 추가 정보가 들어간다. 헤더는 공통으로 쓰는 일반 헤더와 요청 헤더, 응답 헤더, 본체 헤더로 구분된다. 메시지 본문은 선택 사항이며 모든 메시지에 포함되지는 않는다. 본문이 있을 때는 SDP 등을 통해 미디어 정보를 전달한다.

세션 상태를 바꾸는 요청과 응답 코드

SIP는 요청 명령으로 세션의 상태를 제어한다.

  • INVITE: 세션 설정을 요청한다.
  • ACK: INVITE 요청의 최종 응답을 확인한다.
  • BYE: 세션 종료를 요청한다.
  • CANCEL: 진행 중인 요청을 취소한다.
  • REGISTER: 사용자 위치를 등록한다.
  • OPTIONS: 서버 기능을 질의한다.
  • SUBSCRIBE: 이벤트를 구독한다.
  • UNSUBSCRIBE: 이벤트 구독을 취소한다.
  • NOTIFY: 이벤트를 통지한다.

응답 코드는 HTTP와 마찬가지로 3자리 숫자이며, 첫 번째 숫자가 응답의 성격을 나타낸다.

  • 1xx: 임시 응답 — 100 Trying, 180 Ringing
  • 2xx: 성공 응답 — 200 OK
  • 3xx: 리다이렉션 응답 — 302 Moved Temporarily
  • 4xx: 클라이언트 오류 — 404 Not Found
  • 5xx: 서버 오류 — 500 Server Internal Error
  • 6xx: 글로벌 오류 — 603 Decline

단말 위치와 요청 경로를 나누어 관리한다

SIP 통신은 종단 장치와 여러 서버 역할이 함께 구성된다.

User Agent(UA)는 통신이 시작하고 끝나는 SIP 종단 장치다. UAC(User Agent Client)는 요청을 생성하고, UAS(User Agent Server)는 요청을 처리해 응답한다. IP 전화기나 소프트폰 같은 대부분의 SIP 장치는 두 기능을 모두 가진다.

프록시 서버는 클라이언트 요청을 다른 서버로 전달한다. 요청 라우팅, 인증, 권한 부여를 수행하고 네트워크 경로 최적화와 보안 기능을 제공한다. 반면 리다이렉트 서버는 목적지 주소를 클라이언트에 알려준다. 클라이언트는 전달받은 주소로 직접 새 요청을 보낸다.

등록 서버(Registrar)는 REGISTER 요청을 처리해 사용자 URI와 IP 주소의 매핑 정보를 저장한다. 위치 서비스와 연동해 사용자 위치 추적 기능을 제공한다. 위치 서버(Location Server)는 사용자 또는 도메인의 위치 정보 데이터베이스를 관리하며, 프록시 서버와 리다이렉트 서버가 메시지 라우팅에 활용한다.

프록시를 경유하는 호출과 종료

기본적인 호출은 발신자의 INVITE가 프록시 서버를 거쳐 수신자에게 도달하면서 시작한다. 수신 측의 응답은 같은 경로를 따라 돌아오고, ACK로 최종 확인한 뒤 RTP 미디어 세션이 진행된다. 통화 종료는 BYE와 200 OK 응답으로 처리한다.

수신자(UAS)프록시 서버발신자(UAC)수신자(UAS)프록시 서버발신자(UAC)미디어 세션 진행 (RTP)INVITE100 TryingINVITE180 Ringing180 Ringing200 OK200 OKACKACKBYEBYE200 OK200 OK

네트워크에 접속한 사용자는 등록 서버에 자신의 위치 정보를 등록한다. 등록 서버는 위치 서버에 저장을 요청하고, 저장 확인 후 사용자 에이전트에 200 OK를 반환한다.

위치 서버등록 서버사용자 에이전트위치 서버등록 서버사용자 에이전트REGISTER sip:domain.com사용자 위치 저장 요청저장 확인200 OK

H.323과 다른 설계 선택

특성 SIP H.323
설계 철학 인터넷 중심, 단순성 통신 산업 중심, 복잡성
메시지 형태 텍스트 기반 이진 인코딩(ASN.1)
복잡성 비교적 단순 복잡함
확장성 높음 제한적
세션 설정 시간 짧음 길음
표준 기관 IETF ITU-T
구현 용이성 쉬움 어려움
호환성 다른 인터넷 프로토콜과 쉽게 통합 전화망 프로토콜과 호환

확장성의 장점과 운영 환경의 제약

SIP는 텍스트 기반이어서 구현, 개발, 디버깅이 비교적 쉽고, IP 기반 서비스와 통합하기 좋다. 모듈화된 아키텍처는 다양한 미디어 유형과 코덱을 지원하며, HTTP와 비슷한 구조와 이메일 형식의 주소 체계는 개발과 사용자 식별에 유리하다. 새로운 애플리케이션으로 서비스를 확장하기에도 적합하다.

반면 네트워크 지연에는 민감할 수 있다. NAT(Network Address Translation) 환경에서는 추가 구성이 필요하고, QoS(Quality of Service)는 SIP 자체만으로 보장되지 않는다. 보안 메커니즘도 별도로 구현해야 하며, 다양한 확장으로 상호운용성 문제가 생길 수 있다.

통합 커뮤니케이션과 웹 기반 실시간 통신

기업용 IP-PBX 시스템에서는 Cisco, Avaya, Microsoft Teams 등이 SIP 기반 통신 인프라를 제공하고, 내부 통신과 외부 PSTN 연결에 SIP 트렁킹을 활용한다.

인터넷 전화 서비스에서는 Skype, Google Voice, Zoom Phone 등이 SIP 기반 음성 통화를 제공하며, SIP로 전통적인 전화망과 인터넷 통신을 연결한다. Microsoft Teams와 Cisco Webex 같은 통합 커뮤니케이션(UC) 솔루션은 음성, 화상, 메시징을 단일 인터페이스로 통합하는 데 SIP를 활용한다.

WebRTC 환경에서도 SIP 시그널링을 사용할 수 있다. 게이트웨이를 통해 웹 브라우저 기반 실시간 통신과 SIP 네트워크를 연동한다.

IMS와 클라우드 통신으로 이어지는 역할

SIP는 5G 네트워크에서 IMS(IP Multimedia Subsystem)의 핵심 프로토콜로 계속 활용된다. IoT(사물인터넷) 장치 간 통신에는 경량화된 SIP 프로토콜 적용이 확대되고, 클라우드 기반 통신 서비스에서의 중요성도 증가하고 있다.

AI 기반 통신 서비스와 통합해 지능형 라우팅과 사용자 경험을 개선하는 방향, WebRTC와 지속적으로 결합해 웹 기반 실시간 통신을 발전시키는 방향도 이어지고 있다. SIP는 분산 시스템, 클라우드 서비스, IoT 환경에서 통신 프로토콜로서의 역할이 더욱 중요해질 전망이다.

SIPVoIP시그널링멀티미디어 통신네트워크 프로토콜