음성 인터넷 프로토콜(VoIP)이란?

음성 인터넷 프로토콜(VoIP)은 유선 기반 전화 시스템의 대안입니다. VoIP를 이용하여 공중전화망 대신 인터넷을 통해 전화를 걸 수 있습니다.

학습 목표

이 글을 읽은 후에 다음을 할 수 있습니다:

  • 음성 인터넷 프로토콜(VoIP)의 작동 방식 설명
  • VoIP의 기술적 세부 사항 설명
  • VoIP 서비스 중단 및 사이버 공격의 원인 이해하기

글 링크 복사

음성 인터넷 프로토콜(VoIP)이란?

음성 인터넷 프로토콜(VoIP)은 인터넷을 통해 전화를 걸 수 있는 방법입니다. 기존 유선 전화 시스템과 달리 인터넷은 연결된 사람 간에 실시간으로 오디오 신호를 전달하도록 설계되지 않았습니다. 이를 가능하게 하기 위해서는 VoIP를 구성하는 기술 및 프로토콜과 같은 특수한 기술과 프로토콜이 구축되어야 했습니다. 오늘날 VoIP는 오디오 및 비디오 실시간* 통신 모두에 아주 효율적인 방법입니다.

VoIP는 널리 채택되었습니다. 많은 산업 분야에서 유선 전화(기술적인 이름은 "공중 교환 전화망")를 대체하는 지배적인 형태의 전화 시스템입니다.

VoIP는 유선 전화에 비해 몇 가지 장점이 있습니다. 유연성이 뛰어나고 회선을 쉽게 추가할 수 있으며 기존 전화 서비스보다 저렴한 경우가 많고 비디오와 오디오를 지원하며 어디서나 액세스할 수 있습니다.

그러나 VoIP는 유선 전화가 대부분 보호가 되는 서비스 중단 및 사이버 공격에 취약합니다(예: DDoS 공격). 또한 VoIP는 안정적인 인터넷 연결과 전원에 의존합니다.

*실시간이란 연결된 모든 사용자의 메시지가 나중에 전송하기 위해 저장되지 않고 생성되는 즉시 전달되는 것을 의미합니다.

오디오는 VoIP를 통해 어떻게 전송될까요?

Alice가 인터넷 전화 회선을 사용하여 밥에게 전화를 걸었다고 가정해 보겠습니다. Alice가 VoIP 지원 핸드셋을 들고 Bob의 번호로 전화를 걸어 다음과 같이 말합니다. "안녕하세요, Bob." Alice의 말이 Bob에게 전달되려면 어떤 일이 일어나야 할까요?

  1. 연결 설정: VoIP 서비스는 Alice의 핸드셋과 Bob의 핸드셋 사이에 디지털 연결을 설정합니다.프로세스의 이 부분은 특수 네트워킹 프로토콜로 처리됩니다.
  2. 아날로그에서 디지털로: Alice의 핸드셋에서는 그녀의 목소리가 디지털 정보로 변환됩니다.
  3. 인코딩: 이 디지털 정보는 인코딩되고 압축되어 인터넷을 통해 전송될 수 있습니다.
  4. 데이터 패킷: 인코딩된 디지털 버전의 Alice 음성은 패킷이라는 작은 덩어리로 나뉘며, 각각 다양한 네트워킹 프로토콜에 의해 여러 개의 헤더가 첨부됩니다.
  5. 패킷이 인터넷을 통해 이동합니다. 패킷은 먼저 Alice의 근거리 통신망(LAN) 라우터 그리고 다른 여러 라우터를 거쳐 VoIP 서비스 공급자의 사설 교환기(PBX) 내의 VoIP 서버로 전달됩니다.서버에서는 패킷을 Bob의 핸드셋으로 라우팅합니다.패킷이 네트워크에서 네트워크로 전달되어 Bob의 LAN 라우터에 도달할 때까지 전달되며, 라우터에서 최종적으로 Bob의 핸드셋으로 패킷이 전달됩니다.
  6. Bob이 Alice의 목소리를 듣습니다. 2단계부터 4단계는 반대로 진행됩니다. 패킷이 Alice의 음성을 압축한 디지털 사운드로 재조합된 후 압축이 해제되고 Bob의 핸드셋에 있는 스피커에서 소리로 재생됩니다.

관련된 단계가 많기는 하지만, 전체 프로세스는 밀리초 내에 완료됩니다. 이상적으로는 사람이 알아차릴 수 있는 지연이 없어 Alice가 말하자마자 Bob이 "안녕하세요, Bob" 이라고 말하는 것을 들을 수 있습니다. 대기 시간은 로컬 네트워크의 효율성과 대역폭, Alice와 밥 사이의 거리에 따라 달라집니다(거리로 인한 지연을 대기 시간이라고 합니다).

연결이 설정되면 나머지 프로세스는 양쪽 끝에서 동시에 진행될 수 있습니다. VoIP 지원 전화기는 오디오 데이터를 동시에 송수신할 수 있으므로 Alice와 Bob이 의도하지 않게 서로에게 "안녕하십니까?" 라고 물으면 서로가 말하는 내용을 동시에 들을 수 있습니다.

VoIP에서 '인터넷 프로토콜'은 무엇을 의미할까요?

인터넷을 통해 전송되는 데이터는 텍스트와 코드(이 웹 페이지에서와 같이), 이미지 또는 오디오 콘텐츠(VoIP에서와 같이)와 같이 "패킷"이라는 작은 섹션으로 나뉩니다. 이러한 패킷은 인터넷을 구성하는 회선 및 장비를 통해 이동한 다음 이를 수신하는 장치에서 사용 가능한 콘텐츠로 해석됩니다.

인터넷 프로토콜(IP)은 네트워킹을 가능하게 하는 데이터 패킷 포맷의 표준화된 방법입니다.IP는 이러한 패킷을 처리하는 방법과 패킷의 콘텐츠에 대한 정보를 제공하는 방법 등을 설명합니다.인터넷이 가능한 모든 장치는 자동으로 IP 패킷을 생성하고 해석할 수 있습니다.기본적으로 모든 인터넷 서비스는 VoIP를 포함하여 IP를 기반으로 구축되므로 "voice over IP"라는 이름이 붙습니다.

VoIP는 IP를 기반으로 어떤 프로토콜을 사용할까요?

다양한 유형의 인터넷 서비스를 가능하게 하는 여러 프로토콜이 IP 위에서 실행됩니다. 첫 번째는 전송 프로토콜로, 패킷이 올바른 위치에 도착하고 올바르게 수신되도록 도와줍니다. IP는 전송 제어 프로토콜(TCP) 또는 사용자 데이터그램 프로토콜(UDP)과 함께 사용할 수 있습니다.

대부분의 VoIP 서비스는 TCP 대신 UDP를 전송 프로토콜로 사용하는데, 이는 UDP가 더 빠르기 때문입니다. 이는 보다 안정적인 TCP를 사용하여 매초마다 오디오 및 비디오를 전송하는 일대다 스트리밍 서비스와 대조적입니다.

애플리케이션 계층 프로토콜은 전송 프로토콜 위에 사용됩니다. 이러한 프로토콜은 데이터를 사용자 대면 애플리케이션이 해석할 수 있는 형태로 변환합니다. 대부분의 인터넷에서는 애플리케이션 계층 프로토콜로 하이퍼텍스트 전송 프로토콜(HTTP)이 사용됩니다. 그러나 VoIP에는 HTTP보다 오디오 및 비디오 데이터를 실시간으로 전송하는 데 더 적합한 다른 프로토콜이 사용됩니다.

VoIP 애플리케이션 계층 프로토콜은 VoIP 서비스에 따라 다릅니다. 일부 공급자는 다음과 같은 개방형 프로토콜을 사용합니다.

  • 세션 초기화 프로토콜(SIP)은 통화를 설정하고 종료합니다.앞서의 예에서 Alice의 VoIP 서비스는 아마도 SIP를 사용하여 Alice의 휴대폰과 Bob의 휴대폰 간의 연결을 시작했을 것입니다.
  • 실시간 전송 프로토콜(RTP)은 통화의 실제 오디오 및 비디오 콘텐츠를 전송합니다.
  • 보안 실시간 전송 프로토콜(SRTP)은 RTP의 암호화된 버전입니다.
  • 미디어 게이트웨이 제어 프로토콜(MGCP)은 VoIP와 공중 교환 전화망 간의 연결을 제어합니다.
  • H.323은 SIP와 동일한 기능을 수행하지만, 텍스트 기반이 아닌 바이너리 기반입니다.H.323은 오늘날에는 많이 사용되지 않습니다.

이러한 프로토콜은 공개적으로 문서화되어 있으며 누구나 사용할 수 있습니다. 하지만 일부 VoIP 공급자는 독점 프로토콜을 사용합니다. 인터넷을 가능하게 하고 대부분의 인터넷 트래픽을 전달하는 개방형 프로토콜과 달리, 이러한 독점 프로토콜은 폐쇄적이며 이를 역설계하는 것은 공급자의 서비스 약관에 의해 금지될 수 있습니다. 이러한 독점 프로토콜은 여전히 TCP, UDP, IP와 같은 개방형 프로토콜을 기반으로 작동합니다.

VoIP용 독점 프로토콜의 예는 다음과 같습니다.

  • Skype 프로토콜: 이 프로토콜은 Skype 애플리케이션에서만 사용하도록 Skype에서 개발했습니다.Microsoft에서는 Skype를 인수한 후 2014년에 이 프로토콜을 더 이상 사용하지 않고 다른 프로토콜로 대체했습니다.
  • Microsoft Notification Protocol 24(MNP24): Skype에서는 2014년부터 이 프로토콜을 사용하고 있습니다.
  • Skinny Client Control Protocol(SCCP): 이 독점 프로토콜은 Cisco의 소유입니다.
  • Inter-Asterisk eXchange(IAX): Asterisk라는 특정 유형의 오픈 소스 PBX 소프트웨어를 사용하는 VoIP 서비스와 함께 사용할 수 있습니다.

VoIP 서비스가 중단되는 원인은?

인터넷 연결 불량: 인터넷 연결의 대역폭이 낮으면 패킷을 통과하기가 어려워지므로 오디오 품질에 영향이 미칩니다.인터넷에 연결되어 있지 않다는 것은 VoIP가 전혀 작동하지 않는다는 뜻입니다.

네트워크 혼잡: 한번에 너무 많은 데이터가 네트워크를 통해 교환되는 경우, 고속도로에서 교통량이 많아지면 이동 시간이 느려지는 것처럼 VoIP 통화도 데이터 패킷이 효율적으로 전송되지 못할 수 있습니다.

UDP 제한 시간 초과: 앞서 설명한 것처럼 VoIP는 일반적으로 UDP 전송 프로토콜에서 실행됩니다.방화벽에서는 보안상의 이유로 지정된 시간이 지나면 UDP 연결이 종료될 수 있습니다.

사이버 공격: 다른 인터넷 기반 서비스와 마찬가지로 VoIP도 공격에 취약합니다.특히 VoIP 서비스는 분산 서비스 거부(DDoS) 공격의 표적이 되는 경우가 많습니다.이러한 공격 때문에 한번에 몇 분, 몇 시간 또는 며칠 동안 VoIP 서비스가 오프라인 상태가 될 수 있습니다.

VoIP가 분산 서비스 거부(DDoS) 공격에 취약한 이유는?

거의 모든 네트워킹 프로토콜을 사용하여 DDoS 공격이 시작될 수 있습니다. 공격자가 VoIP를 표적으로 삼는 이유는 이러한 공격이 비즈니스 생산성을 저해하는 즉각적인 효과가 있기 때문입니다. 기업에서 전화를 걸 수 없으면 많은 일을 처리할 수 없습니다.

크게 나누자면 VoIP DDoS 공격은 다음 두 가지 카테고리로 분류됩니다.

1. VoIP 서비스 공급자를 대상으로 한 공격.이러한 DDoS 공격으로 잠재적으로 모든 VoIP 공급자의 고객에 대한 서비스가 중단될 수 있으며, 이러한 공격은 다음과 같은 다양한 형태로 나타날 수 있습니다.

  • 공급자의 웹 애플리케이션을 겨냥하여 사용자의 로그인 방지
  • 공급자의 서버를 겨냥하여 PBX 서비스를 다운시킴
  • 사용자가 공급자의 웹 사이트로 이동할 수 없도록 DNS 확인을 중단시킴

VoIP 공급자를 대상으로 하는 일부 공격은 SIP를 지원하는 서버에 과부하를 일으키는 SIP 폭주를 통해 VoIP의 작동 방식을 악용합니다. 다른 공격자들은 대부분의 보호되지 않은 웹 사이트와 서버에 효과적인 보다 일반적인 DDoS 공격 방법(예: HTTP 폭주SYN 폭주)을 사용할 수 있습니다.

또한, 랜섬 DDoS 공격이 VoIP 공급자를 대상으로 수행되었습니다. 랜섬 DDoS 공격에서는 피해자가 공격자에게 랜섬을 지급할 때까지 공격이 계속됩니다.

2. VoIP를 사용하는 조직을 대상으로 한 공격.이러한 공격은 여러 VoIP 공급자 고객의 서비스를 중단시키는 대신 한 번에 한 조직에만 집중합니다.자체적으로 VoIP 네트워크와 서버를 호스팅하는 조직은 특히 취약할 수 있습니다.대형 VoIP 공급자와는 달리, 이러한 조직은 기본 VoIP 서버가 SIP 폭주 또는 다른 공격의 대상이 될 경우 전환할 백업 서버가 많지 않을 가능성이 높습니다.

VoIP의 SIP 폭주

DDoS 공격에서 VoIP의 가장 큰 표적이 되는 측면 중 하나는 SIP입니다. SIP 기반 DDoS 공격은 HTTP와 마찬가지로 텍스트 기반 프로토콜이고 불법적인 SIP 요청은 합법적인 SIP 요청과 구별하기 어려우므로 차단하기 어렵습니다.

SIP INVITE 폭주는 가짜 "INVITE" 요청으로 통화를 시작하려는 SIP 서버를 압도합니다. 서버에서는 이러한 각 요청을 처리해야 하므로 정상적인 호출에 대한 서비스 속도가 느려지거나 거부됩니다. SIP REGISTER 폭주도 비슷하며, "INVITE" 대신 "REGISTER" 메시지를 사용합니다.

공격자는 서버를 재시작하거나 부분적으로 실패하게 하여 서버를 중단시키는 특수하게 구성된 SIP 메시지를 보낼 수도 있습니다. 이러한 메시지를 반복해서 보내면 합법적인 사용자의 서비스가 장기간 거부될 수 있습니다.

Cloudflare DDoS 완화는 VoIP DDoS 공격으로부터 보호하는 데 도움이 됩니다. Cloudflare에서는 역대 최대 규모의 DDoS 공격보다 몇 배나 큰 네트워크 용량을 보유하고 있습니다. 웹 애플리케이션을 위한 Cloudflare DDoS 방어 또는 온프레미스 네트워크 보호를 위한 Magic Transit에 대해 자세히 알아보세요.