Lastverteilung und Erstellung hochverfügbarer SIP- und PBX-Dienste

GESCHRIEBEN VON Zevenet | 6. März 2019

Übersicht

VoIP steht für Voice over Internet Protocol, das alle Telefongespräche abdeckt, die über das Internet getätigt werden, um es jedoch als echt zu bezeichnen SIP Protokoll wurde definiert.

SIP or Gesprächs Protokoll ist das Protokoll, das Multimedia-Kommunikationssitzungen einschließlich Anrufe (Sprache und Video) verwaltet, so können wir das sagen SIP ist eines der spezifischen Protokolle, die VoIP beruht auf.

In einer Medienkommunikationssitzung die SIP Das Protokoll ist für die Signalisierungsoperationen verantwortlich, wie z. B. die Einleitung und Beendigung von Sprach- oder Videoanrufen. Die Kommunikation, dass SIP können festlegen, Unicast, mit zwei Parteien oder Multicast, mehrere Parteien. Durch die SIP Protokoll können vorhandene Anrufe geändert werden, z. B. ein anderes Mitglied einladen. Das SIP ist so konzipiert, dass es unabhängig vom zugrunde liegenden Transportschichtprotokoll ist und mit verwendet werden kann UDP, TCPund SCTP (Stream Control Übertragungsprotokoll). SIP kann auch zusammen mit anderen Protokollen arbeiten, die das Medienformat angeben können und die Medien danach tragen SIP baut den Anruf auf. Weiterleiten von Telefonanrufen ist auch von a möglich PBX Telefonanlage an das externe Netzwerk, wo PBX (Private Zweigstelle) ist ein Telefonvermittlungssystem, das in einer privaten Organisation mit mehreren internen Geräten installiert wird.

Dieses Handbuch eignet sich zum Einrichten beliebter SIP-Dienste wie z Sternchen, Websphere SIP-Proxy, SIP-Gießerei, Elastix, FreeSWITCH, OpenPBX von Voicetronix, PBXInAFlash, FreePBX, OpenSIPs, Kamailio, 3CX, Office SIP-Serverusw., alle in hoher Verfügbarkeit und sofort skalierbar.

Wie funktioniert das SIP-Protokoll?

Nehmen wir an, wir haben zwei Anrufer, Bonnie und Clyde. Bonnie ruft Clyde an. Zunächst müssen die Telefone von Bonnie und Clyde auf einem SIP-Server registriert sein. Der Registrierungsprozess zwischen den Kunden und dem Registrierungsdienst ist:

1. Der Softphone-Client sendet eine REGISTRIEREN Nachricht an den SIP-Server.
2. Der SIP-Server antwortet mit einem 401 Nicht autorisiert Nachricht mit einem Header WWW-Authenticate.
3. Der Client sendet dann erneut die REGISTRIEREN Anfrage an den SIP-Server einschließlich der Genehmigung Header.
4. Wenn die Authentifizierung korrekt ist, gibt der SIP-Server a zurück 200 OK Antwort an den Kunden. In dieser Phase kann der Client Anrufe empfangen und einleiten.

Dieser Registrierungsprozess ist auch über den in diesem Artikel vorgeschlagenen Proxy-Load-Balancer verfügbar.

Um besser zu verstehen, wie ein Anruf zwischen Bonnie und Clyde ausgeführt wird, siehe unten die im Protokoll definierten Schritte.

1. Bonnie ruft einen Anruf bei Clyde an, indem sie eine EINLADEN Nachricht
2. SIP-Server A übergibt das EINLADEN Nachricht an den Empfänger-SIP-Server B
3. Inzwischen SIP-Server A Antworten 100 VERSUCHEN Nachricht an Bonnie
4. SIP-Server B übergibt das EINLADEN Nachricht an Clyde
5. Inzwischen ist auch eine 100 VERSUCHEN Nachricht an den SIP-Server A
6. Clydes Gerät ist jetzt 180 RINGEN und überträgt es an den SIP-Server B
7. SIP-Server B sendet dies 180 RINGEN zum SIP-Server A
8. SIP-Server A vermittelt dies 180 RINGEN zu Bonnie
9. Clyde empfängt den Anruf und sendet 200 OK Nachricht
10 Und vermittelt es 200 OK Nachricht an den SIP-Server B
11 SIP-Server A vermittelt dies 200 OK Nachricht an Bonnie
12 Zwischen Bonnie und Clyde wird eine Verbindung hergestellt, von der aus Bonnie direkt sendet ACK zu Clyde, und sowohl Bonnie als auch Clyde kommunizieren direkt miteinander
13 Jeder Teilnehmer unterbricht die Verbindung mit einem WIEDERSEHEN
14 Die Gegenstelle sendet die Bestätigung zurück 200 OK

SIP-Lastausgleichsumgebung

Wenn Sie die Besonderheiten des SIP-Protokolls kennen, wollen wir in diesem Artikel die SIP-Server skalieren, um mit einer größeren Anzahl registrierter Softphones und mit einer höheren Anzahl von Anrufen umgehen zu können. Das folgende Diagramm zeigt die Servicearchitektur in einem Rechenzentrum.

Lassen Sie uns unten sehen, wie es konfiguriert wird.

SIP-Lastausgleichskonfiguration

Vor dem Einrichten des virtuellen Dienstes müssen wir einen dedizierten Dienst erstellen virtuelle IP, da diese IP-Adresse empfangen kann TCP or UDP Frames. Um dies zu erreichen, gehen Sie zu Netzwerk> Virtuelle Schnittstellen. Klicken Sie dann auf Aktion> Virtuelle Schnittstelle erstellen.

Als nächstes wählen Sie Übergeordnete SchnittstelleSchnittstelle Name und seine IP Adresse:

Nun ist es an der Zeit, den virtuellen SIP-Dienst einfach in den von SIP-Diensten verwendeten Standardports einzurichten TCP und / oder UDP 5060 or 5061. Hafen 5060 wird im Allgemeinen für nicht verschlüsselten Signalisierungsverkehr und Port verwendet 5061 wird normalerweise für mit verschlüsselten Datenverkehr verwendet TLS (Transport Layer Security).

Mit Zevenet Load Balancer erreichen wir diese Konfiguration, indem Sie a LSLB Bauernhofprofil L4xNAT mit Anschlüssen 5060 or 5061. Im virtuellen Dienst werden verschlüsselte und nicht verschlüsselte Kommunikationen gleichzeitig unterstützt, wenn die Ports im virtuellen Dienst aufgelistet sind.

Um dies zu tun, gehen Sie zu LSLB> Bauernhöfe und erstellen Sie eine neue, wie unten gezeigt.

Klicken Sie nach dem Erstellen auf VertiefungWählen SIP as Protokolltyp. Zu diesem Zeitpunkt wird der Layer-4-SIP-Proxy im aktuellen virtuellen Dienst aktiviert, um die Registrierung und die Anrufe der Benutzer ordnungsgemäß zu verteilen. Wir empfehlen auch NAT as NAT-Typ aber DTA kann auch verwendet werden, um die Quell-IP des Clients abzurufen. Zum Schluss klicken Sie auf Aktualisieren um die Änderungen anzuwenden.

Zum Schluss richten Sie die Backends ein, klicken Sie auf Dienstleistungenund unter der Backends Abschnitt klicken Sie auf Aktion> Backend hinzufügen.

Füll das IP, Hafen, Gewicht und klicken Sie auf Spare Aktion, um die Änderungen anzuwenden.

Fügen Sie so viele SIP-Server hinzu, wie Sie zum Skalieren Ihres Dienstes benötigen. Sie können jetzt die Virtuelle IP als virtueller SIP-Dienst in Ihren Softphones und Clients auf hochverfügbare, zuverlässige und skalierbare Weise.

Erweiterte SIP-Integritätsprüfungen

In den neuesten Zevenet-Versionen können Sie eine erweiterte Funktionsprüfung speziell für SIP-Dienste verwenden, bei denen der Load Balancer Dummy-SIP-Anrufe an alle SIP-Server durchführt, die als Backends konfiguriert sind, um sicherzustellen, dass die SIP-Lesedienste ordnungsgemäß ausgeführt werden.

Für den Fall, dass noch keine erstellt wurde check_sip Farm Guardian Befehl, dann erstellen Sie es in der Überwachung> Farmguardian Abschnitt wie unten gezeigt.

Zum besseren Verständnis der im check_sip Befehl finden Sie in der Hilfe des Health Checkers.

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

An unserem Beispiel können wir unseren Health Checker in definieren Farm Guardian Abschnitt wie unten gezeigt.

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

Beachten Sie, dass der Token-HOST mit jedem in der Farm konfigurierten SIP-Backend zur Laufzeit geändert wird.

SIP Application Delivery Clustering

Zevenet bietet auch die Möglichkeit, den skalierbaren SIP-Zustelldienst mithilfe eines Clusterdienstes zwischen zwei redundanten Einheiten auf Hochverfügbarkeit zu setzen. Setzen Sie eine andere Zevenet-Einheit ein und beziehen Sie sich auf die System> Cluster Abschnitt, um es in hoher Verfügbarkeit zu konfigurieren.

Verbesserung der SIP-Sicherheit

Das Anwenden einer Sicherheitsschicht auf einen öffentlichen SIP-Dienst ist mit dem IPDS-Modul sehr einfach. Es ermöglicht Blacklisting-Listen, Echtzeit-Blackhole-Listen und DoS-Schutz. Bitte wende dich an die IPDS Abschnitt aus dem Hauptmenü, um weitere Informationen zum Schutz eines öffentlichen SIP-Dienstes zu erhalten.

Konfiguration der VoIP-Telefonclients

Sobald unser SIP-Dienst skalierbar, hochverfügbar und mit erhöhter Sicherheit eingerichtet ist, ist es Zeit, den neuen Dienst in den Softphones und Clients zu konfigurieren. In diesem Fall empfehlen wir, einen DNS-Eintrag einzurichten, der in die VIP-Adresse oder eine öffentliche IP-Adresse für den virtuellen Dienst aufgelöst wird. Eine solche DNS or FQDN Der Name unseres virtuellen SIP-Dienstes wird auf der Clientseite verwendet, anstatt dass eine echte SIP-IP-Adresse konfiguriert wird. Diese Konfiguration bietet die Flexibilität, die Clients einfach und automatisch mit dem Lastausgleich zu versehen.

Andererseits empfehlen wir, auf der Clientseite ein niedrigeres Keep-Alive-Timeout zu konfigurieren, um die Registrierung häufiger zu erzwingen. Wenn ein SIP-Server als inaktiv erkannt wird, merkt der Client dies und versucht, die Verbindung schnell wieder herzustellen noch einer.

Genießen Sie jetzt Ihren SIP-skalierbaren Service!

Teilen:

Dokumentation unter den Bedingungen der GNU Free Documentation License.

War dieser Artikel hilfreich?

Verwandte Artikel