SIP - Gabeln

Manchmal leitet ein Proxyserver einen einzelnen SIP-Anruf an mehrere SIP-Endpunkte weiter. Dieser Vorgang wird als Gabeln bezeichnet. Hier kann ein einzelner Anruf viele Endpunkte gleichzeitig klingeln.

Mit SIP Forking können Sie Ihr Tischtelefon gleichzeitig mit Ihrem Softphone oder einem SIP-Telefon auf Ihrem Handy klingeln lassen, sodass Sie den Anruf problemlos von beiden Geräten aus entgegennehmen können.

Angenommen, der Chef kann den Anruf in einem Büro nicht entgegennehmen oder abwesend sein. Durch SIP-Forking kann der Sekretär Anrufe seiner Nebenstelle entgegennehmen.

Forking ist möglich, wenn ein Stateful-Proxy verfügbar ist, der ausgeführt und aus den vielen empfangenen Proxys reagiert werden muss.

Wir haben zwei Arten von Gabeln -

  • Paralleles Gabeln
  • Sequentielles Gabeln

Paralleles Gabeln

In diesem Szenario teilt der Proxyserver die EINLADUNG beispielsweise auf zwei Geräte (UA2, UA3) gleichzeitig auf. Beide Geräte generieren 180 Klingeltöne und wer den Anruf erhält, generiert 200 OK. Die Antwort (angenommen UA2), die zuerst den Absender erreicht, richtet eine Sitzung mit UA2 ein. Für die andere Antwort wird ein CANCEL ausgelöst.

Wenn der Absender beide Antworten gleichzeitig empfängt, leitet er die Antwort basierend auf dem q-Wert weiter.

Sequentielles Gabeln

In diesem Szenario teilt der Proxyserver die EINLADUNG einem Gerät (UA2) zu. Wenn UA2 zu diesem Zeitpunkt nicht verfügbar oder ausgelastet ist, wird es vom Proxy an ein anderes Gerät (UA3) weitergeleitet.

Branch - ID und Tag

Zweigstellen-IDs helfen Proxys, Antworten auf gegabelte Anforderungen abzugleichen. Ohne Zweigstellen-IDs könnte ein Proxyserver die gegabelte Antwort nicht verstehen. Die Zweigstellen-ID ist in der Via-Kopfzeile verfügbar.

Tags werden von der Benutzerkontensteuerung verwendet, um mehrere endgültige Antworten von verschiedenen Benutzerkontensteuerungen zu unterscheiden. Eine UAS kann nicht auflösen, ob die Anforderung gegabelt wurde oder nicht. Daher muss ein Tag hinzugefügt werden.

Proxies können auch Tags hinzufügen, wenn eine endgültige Antwort generiert wird. Sie fügen niemals Tags in Anforderungen oder Antworten ein, die sie weiterleiten.

Möglicherweise kann eine einzelne Anforderung auch von mehreren Proxyservern gegabelt werden. Der Proxy, der sich teilen würde, fügt den von ihm erstellten Zweigen seine eigenen eindeutigen IDs hinzu.

Anrufbein und Anruf-ID

Ein Anrufabschnitt bezieht sich auf eine Eins-zu-Eins-Signalisierungsbeziehung zwischen zwei Benutzeragenten. Die Anruf-ID ist eine eindeutige Kennung, die in einer SIP-Nachricht enthalten ist und sich auf den Anruf bezieht. Ein Anruf ist eine Sammlung von Anrufzweigen.

Eine Benutzerkontensteuerung beginnt mit dem Senden einer EINLADUNG. Aufgrund des Gabelns kann es mehrere 200 OK von verschiedenen UAs erhalten. Jeder entspricht einem anderen Anrufabschnitt innerhalb desselben Anrufs.

Ein Anruf ist somit eine Gruppe von Anrufzweigen. Ein Anrufabschnitt bezieht sich auf eine End-to-End-Verbindung zwischen UAs.

Die CSeq-Leerzeichen in den beiden Richtungen eines Anrufabschnitts sind unabhängig. Innerhalb einer einzelnen Richtung wird die Sequenznummer für jede Transaktion erhöht.

Voicemail

Voicemail ist heutzutage für Unternehmensbenutzer sehr verbreitet. Es ist eine Telefonanwendung. Wenn der angerufene Teilnehmer nicht erreichbar ist oder den Anruf nicht empfangen kann, meldet sich die TK-Anlage beim anrufenden Teilnehmer, um eine Sprachnachricht zu hinterlassen.

Der Benutzeragent erhält entweder eine 3xx-Antwort oder leitet zum Voicemail-Server weiter, wenn die Nummer des angerufenen Teilnehmers nicht erreichbar ist. Es ist jedoch eine Art SIP-Erweiterung erforderlich, um dem Voicemail-System anzuzeigen, welches Postfach verwendet werden soll, dh welche Begrüßung abgespielt werden soll und wo die aufgezeichnete Nachricht gespeichert werden soll. Es gibt zwei Möglichkeiten, dies zu erreichen -

  • Durch Verwendung einer SIP-Header-Felderweiterung

  • Durch Verwendung des Request-URI zum Signalisieren dieser Informationen

Angenommen, für den Benutzer sip:[email protected] hat ein Voicemail-System unter sip: voicemail.tutorialspoint.com, das Voicemail bereitstellt. Die Anforderungs-URI der EINLADUNG, wenn sie an den Voicemail-Server weitergeleitet wird, könnte folgendermaßen aussehen:

sip:voicemail.tutorialspoint.com;target = sip:[email protected];cause = 486

Die folgende Abbildung zeigt, wie der Request-URI die Postfachkennung und den Grund enthält (hier 486).