고 가용성 SIP 및 PBX 서비스의로드 균형 조정 및 생성 방법

게시일: 6년 2019월 XNUMX일

Overview

VoIP를 용 스탠드 VoIP (Voice over Internet Protocol), 이는 인터넷을 통해 만들어진 모든 전화를 포함하지만 실제로 그것을 만들기 위해 SIP 프로토콜이 정의되었습니다.

SIP or 세션 개시 프로토콜 통화 (음성 및 영상)를 포함한 멀티미디어 통신 세션을 관리하는 프로토콜이므로 SIP 특정 프로토콜 중 하나입니다. VoIP를 에 의존.

미디어 통신 세션에서 SIP 프로토콜은 음성 또는 화상 통화의 개시 및 종료와 같은 신호 동작을 담당합니다. 그 통신 SIP 두 당사자 또는 멀티 캐스트, 여러 당사자와 함께 유니 캐스트를 설정할 수 있습니다. ~을 통해 SIP 프로토콜을 사용하면 기존 통화를 수정할 수 있습니다 (예 : 다른 회원 초대). 그만큼 SIP 기본 전송 계층 프로토콜과 독립적 인 방식으로 설계되었으며, 다음과 함께 사용할 수 있습니다. UDP, TCP SCTP (스트림 제어 전송 프로토콜). SIP 또한 미디어 형식을 지정할 수있는 다른 프로토콜과 함께 작동 할 수 있으며 SIP 통화를 설정합니다. 전화 통화의 라우팅은 PBX 전화 시스템을 외부 네트워크에 연결합니다. PBX (사설 구내 교환)는 여러 내부 장치가있는 사설 조직에 설치된 전화 교환 시스템입니다.

이 가이드는 다음과 같이 널리 사용되는 SIP 서비스를 설정하는 데 유용합니다. 별표, Websphere SIP 프록시, SIP 파운드리, 엘라 스틱스, FreeSWITCH, Voicetronix의 OpenPBX, PBXInAFlash, FreePBX, OpenSIPs, 카 밀리 오, 3CX, Office SIP 서버등등, 모두 고 가용성 및 확장 준비가되어 있습니다.

SIP 프로토콜은 어떻게 작동합니까?

Bonnie와 Clyde라는 두 명의 호출자가 있다고 가정 해 보겠습니다. Bonnie가 Clyde에게 전화를 겁니다. 우선 Bonnie와 Clyde의 전화는 SIP 서버에 등록되어야합니다. 클라이언트와 레지스트라 서비스 간의 등록 프로세스는 다음과 같습니다.

1. 소프트 폰 클라이언트가 바이낸스(BINANCE) 가입하기 메시지를 SIP 서버에 전송합니다.
2. SIP 서버는 무단 401 헤더를 포함한 메시지 WWW- 인증.
3. 그런 다음 클라이언트가 바이낸스(BINANCE) 가입하기 SIP 서버에 요청 권한 부여 헤더.
4. 인증이 올 바르면 SIP 서버는 200 OK 클라이언트에 대한 응답. 이 단계에서 클라이언트는 전화를 받고 시작할 수 있습니다.

이 등록 프로세스는이 기사에서 제안하는 프록시로드 밸런서를 통해 고 가용성을 제공합니다.

Bonnie와 Clyde 간의 호출이 어떻게 수행되는지 더 잘 이해하려면 프로토콜에 정의 된 단계를 참조하십시오.

1. Bonnie는 Clyde에 전화를 걸어 초대 메시지
2. SIP 서버 A ~을 지나치다 초대 받는 사람 SIP 서버에 보내는 메시지 B
3. 한편, SIP 서버 A 대답 100 TRYING 보니에게 보내는 메시지
4. SIP 서버 B ~을 지나치다 초대 클라이드에게 보내는 메시지
5. 한편, 100 TRYING 메시지를 SIP 서버로 전송 A
6. Clyde의 장치는 이제 180 RINGING SIP 서버로 전송합니다. B
7. SIP 서버 B 이것을 보낸다. 180 RINGING SIP 서버에 연결 A
8. SIP 서버 A 이것을 전한다 180 RINGING 보니
9. 클라이드가 전화를 받고 200 OK 메시지
10. 그리고 그것을 전한다. 200 OK 메시지를 SIP 서버에 전송 B
11. SIP 서버 A 이것을 전한다 200 OK 보니에게 보내는 메시지
12. 보니 (Bonnie)와 클라이드 (Clyde)는 보니 (Bonnie) ACK 클라이드에게, 보니와 클라이드는 서로 직접 의사 소통을합니다.
13. 어느 상대방이 전화를 끊을 때 안녕
14. 상대방이 확인 응답을 되돌려 보냅니다. 200 OK

SIP 부하 분산 환경

SIP 프로토콜 사양을 안다면, 우리가이 기사에서 달성하고자하는 시나리오는 등록 된 더 많은 수의 소프트 폰을 처리하고 더 많은 수의 호출을 관리 할 수 ​​있도록 SIP 서버를 확장 할 수 있어야합니다. 아래 다이어그램은 데이터 센터의 서비스 아키텍처를 보여줍니다.

구성 방법을 아래에서 살펴 보겠습니다.

SIP로드 균형 조정 구성

가상 서비스를 설정하기 전에 전용 서비스를 생성해야합니다. 가상 IP,이 IP 주소는받을 수 있기 때문에 TCP or UDP 프레임. 이를 달성하기 위해 네트워크> 가상 인터페이스. 다음을 클릭하십시오. 작업> 가상 인터페이스 생성.

다음으로 부모 인터페이스, 인터페이스 이름 및 그 IP 주소:

이제 SIP 서비스에서 사용하는 표준 포트에 SIP 가상 서비스를 쉽게 설정할 시간입니다. TCP 및 / 또는 UDP 5060 or 5061. 포트 5060 암호화되지 않은 신호 트래픽 및 포트에 일반적으로 사용됩니다. 5061 일반적으로와 함께 암호화 된 트래픽에 사용됩니다. TLS (전송 계층 보안).

Zevenet Load Balancer를 사용하면이 구성을 통해 LSLB 농장 프로필 L4xNAT 포트 5060 or 5061. 가상 서비스에서 가상 서비스에 포트가 나열되어 있으면 암호화 된 통신과 암호화되지 않은 통신이 동시에 지원됩니다.

그렇게하려면 이동하십시오. LSLB> 농장 아래에 표시된대로 새로 만듭니다.

작성한 후를 클릭하십시오. Advnaced, 고르다 SIP as 프로토콜 유형. 이 단계에서 4 SIP 프록시 계층은 현재 가상 서비스에서 활성화되어 사용자의 등록 및 호출을 적절히로드 균형 조정합니다. 또한, 우리는 NAT as NAT 유형 비자 면제 프로그램에 해당하는 국가의 시민권을 가지고 있지만 DTA 클라이언트의 소스 IP를 가져 오는데도 사용할 수 있습니다. 마지막으로 업데이트 변경 사항을 적용하려면

마지막으로 백엔드를 설정하고를 클릭하십시오. 서비스, 그리고 백엔드 섹션을 클릭하십시오. 작업> 백엔드 추가.

채우기 IP, 포트, 무게 그리고 클릭 찜하기 변경 사항을 적용하기위한 조치.

서비스를 확장하는 데 필요한만큼의 SIP 서버를 추가하십시오. 이제 가상 IP 소프트 폰 및 클라이언트의 SIP 가상 서비스로서 가용성이 높고 안정적이며 확장 가능한 방식으로 제공됩니다.

고급 SIP 상태 검사

최신 Zevenet 릴리스에서는로드 밸런서가 백엔드로 구성된 모든 SIP 서버에 대해 더미 SIP 호출을 수행하여 SIP 읽기 서비스가 올바르게 실행되고 실행되도록 SIP 서비스에 대한 고급 상태 검사를 사용할 수 있습니다.

이미 생성 된 것이없는 경우 check_sip Farm Guardian 명령을 실행 한 다음 모니터링> 농장 보호자 아래에 표시된대로 섹션.

더 나은 옵션을 이해하기 위해 check_sip 명령에 대해서는 건강 검진 원의 도움을 참조하십시오.

usage: ./check_sip [ options ] FROM TO
Makes SIP call from FROM to TO, sends voice from multiple
files to peer. Content in files need to be PCMU/8000 and
could be recorded with samples/invite_and_recv.pl

Options:
  -d|--debug                   Enable debugging
  -h|--help                    Help (this info)
  -P|--proxy host[:port]       use outgoing proxy, register there unless registrar given
  -R|--registrar host[:port]   register at given address
  -S|--send filename           send content of file, can be given multiple times
  -L|--leg ip[:port]           use given local ip[:port] for outgoing leg
  -T|--timeout T               timeout and cancel invite after T seconds, default 30
  --username name              username for authorization
  --password pass              password for authorization

Examples:
  ./check_sip -T 10 -S welcome.data -S announce.data sip:30@192.168.178.4 sip:31@192.168.178.1
  ./check_sip --username 30 --password secret --proxy=192.168.178.3
     -S holy.data sip:30@example.com 31

예제를 통해 건강 검진을 정의 할 수 있습니다. 농장 수호자 아래에 표시된대로 섹션.

./check_sip -T 9 -S welcome.data -S announce.data sip:Bonnie@192.168.56.201 sip:Clyde@HOST

토큰 HOST는 팜에서 구성된 모든 SIP 백엔드와 함께 런타임에 변경됩니다.

SIP 응용 프로그램 배달 클러스터링

또한 Zevenet은 두 개의 중복 장치 사이에서 클러스터링 서비스를 사용하여 SIP 확장 가능 배달 서비스를 고 가용성으로 설정할 수있는 기능을 제공합니다. 다른 Zevenet 장치를 배치하고 시스템> 클러스터 섹션을 참조하십시오.

SIP 보안 강화

공용 SIP 서비스에 보안 레이어 적용 블랙리스트, 실시간 블랙홀 목록 및 DoS 보호를 허용하는 IPDS 모듈을 사용하면 매우 간단합니다. 자세한 내용은 IPDS 공용 SIP 서비스의 보호에 대한 자세한 내용을 보려면 기본 메뉴의 섹션을 참조하십시오.

VoIP 전화 클라이언트 구성

SIP 서비스를 확장하고 고 가용성을 설정하고 보안을 강화할 준비가되면 소프트 폰과 클라이언트에서 새 서비스를 구성 할 때입니다. 이 경우 가상 서비스의 VIP 주소 또는 공용 IP 주소로 확인되는 DNS 항목을 설정하는 것이 좋습니다. 이러한 DNS or FQDN 가상 SIP 서비스의 이름은 실제 SIP IP 주소가 구성되는 대신 클라이언트 측에서 사용됩니다. 이 구성은 클라이언트를 쉽고 자동으로로드 밸런싱 할 수있는 유연성을 제공합니다.

다른 한편으로는 등록을보다 일반적으로 강제하기 위해 클라이언트 쪽에서 더 낮은 keep-alive timeout을 구성하는 것이 좋습니다. SIP 서버가 다운 된 것으로 감지 된 경우 클라이언트는이를 확인하고 재빨리 다시 연결을 재 시도합니다. 다른 것.

이제 SIP 확장 서비스를 즐기십시오!

공유 :

GNU Free Documentation License의 조건에 따른 문서.

이 글이 도움 되었나요?

관련 기사