BroadNet
Das JournalEngineering
Engineering

Wie eine SMS tatsächlich weitergeleitet wird: SMSC, ESME und der A2P-Zustellungspfad erklärt.

Wie funktioniert ein SMSC? Verfolgen Sie eine A2P-SMS von Anfang bis Ende – ESME-Bindung über SMPP, submit_sm, Speichern und Weiterleiten, HLR-Lookup, MT-Zustellung an das Mobiltelefon und die DLR-Rückmeldung.

10 Min. Lesezeit
Engineering · Ausgabe 12
10 Min. Lesezeit

ine A2P-SMS durchläuft einen definierten Pfad: Ihre Anwendung verbindet sich über SMPP als ESME mit einem SMSC oder Aggregator und sendet eine Submit-SMS. Das SMSC speichert die Nachricht, fragt das HLR des Zielnetzbetreibers ab, um das zuständige MSC des Teilnehmers zu ermitteln, stellt die Nachricht an das Mobiltelefon (MT) zu und sendet eine Zustellbestätigung über dieselbe Kette zurück. Jeder dieser Schritte kann die Zustellung, die Absenderkennung oder die Empfangsbestätigung beeinträchtigen.

Sie möchten zuerst die Kurzfassung? Dann lesen Sie unsere Antwort auf die Frage Was ist ein SMSC?. Dieser Artikel bietet Ihnen eine ausführliche Erklärung.

Die Figuren

Bevor wir den Ablauf verfolgen, ist es hilfreich, die Komponenten und ihre Funktionen zu benennen. Drei Akronyme beschreiben den Großteil des Prozesses: SMSC, ESME und HLR. Zwei Richtungen sind wichtig: MT und MO.

SMSC – die Speicher- und Weiterleitungs-Engine

Das Short Message Service Center (SMSC) ist der Server des Mobilfunkbetreibers, der Nachrichten entgegennimmt, speichert und an den Empfänger weiterleitet – den im 3GPP TS 23.040 definierten Knotenpunkt für das SMS-Übertragungsprotokoll. Es handelt sich nicht um ein einfaches Relay: Es speichert die Nachricht, bis das Mobiltelefon erreichbar ist, versucht die Zustellung innerhalb eines Gültigkeitszeitraums erneut und erstellt einen Statusbericht. Beim Senden über einen Aggregator kommunizieren Sie mit dessen SMSC (oder einem vorgeschalteten Gateway); der terminierende Mobilfunkbetreiber betreibt sein eigenes SMSC, das die endgültige Zustellung durchführt.

ESME – Ihre Bewerbung ist online

Eine externe Kurznachrichten-Entität (ESME) ist jede Anwendung, die sich mit einem SMSC verbindet, um SMS zu senden oder zu empfangen – beispielsweise Ihr OTP-Dienst, Ihre Kampagnenplattform oder Ihr Benachrichtigungssystem. Über SMPP (Self-Mounted Messaging Platform) öffnet die ESME eine dauerhafte TCP-Sitzung mit einem Bind (Sender, Empfänger oder Transceiver) und sendet anschließend eine Submit-SMS-Nachricht. Das SMSC antwortet mit einer Submit-SMS-Antwort, die eine Message-ID enthält, und sendet später eine Deliver-SMS-Nachricht an die ESME zurück, um eingehende Nachrichten und Zustellbestätigungen zu erhalten. Die ESME fungiert als Client, das SMSC als Server.

MT vs. MO – in welche Richtung fließt die Nachricht?

Mobile-Terminated (MT) ist eine Nachricht, die an ein Mobiltelefon zugestellt wird – die Richtung, in die fast der gesamte A2P-Datenverkehr fließt: ein OTP, eine Benachrichtigung oder eine Versandaktualisierung, die auf einem Mobiltelefon landet. Mobile-Originated (MO) ist eine Nachricht, die ein Abonnent von einem Mobiltelefon sendet. So erreichen Zwei-Wege-Antworten, Keyword-Opt-outs und STOP-Anfragen Ihren ESME als deliver_sm. Eine Zustellbestätigung (DLR) wird über den MT-Rückweg übertragen, obwohl sie an Sie zurückgesendet wird.

KomponenteRolle im Lieferprozess
Anwendung / ESMEIhre Software verbindet sich über SMPP mit dem SMSC und sendet per submit_sm MT-Nachrichten.
SMSC (Aggregatorseite)Nimmt die Nachricht entgegen, validiert sie und speichert sie; wählt eine Route zum Zielbetreiber aus; gibt die message_id und später den DLR zurück.
Interconnect / SMS-HubÜberträgt die Nachricht zwischen dem Aggregator und dem Zielbetreiber über einen oder mehrere Zwischenstationen.
Beendender Betreiber SMSCEmpfängt die Nachricht im Betreibernetzwerk und steuert die endgültige Zustellung an den Teilnehmer.
HLRHeimteilnehmerdatenbank; beantwortet die Frage „Wo wird diese Nummer aktuell bedient?“ mit der zugehörigen MSC/VLR-Adresse
MSC / VLRDie Vermittlungsstelle, die derzeit den Teilnehmer bedient, ruft das Mobiltelefon auf und übermittelt die MT-Nachricht.
Mobilteil (MS)Empfängt die Nachricht und sendet eine Bestätigung zurück, die als Zustellnachweis dient.

Speichern und Weiterleiten: Warum es das SMSC gibt

SMS ist systembedingt asynchron. Der Empfänger kann ausgeschaltet sein, keinen Empfang haben oder sich in einem Gespräch ohne freies Signalisierungsfenster befinden. Anstatt einen Fehler zu verursachen, akzeptiert das SMSC die Nachricht, speichert sie und übernimmt die Zustellung – dies wird als „Store-and-Forward“ bezeichnet. Es versucht die Zustellung, und wenn der Teilnehmer nicht erreichbar ist, reiht es die Nachricht in eine Warteschlange ein und wiederholt die Zustellung nach einem Zeitplan, bis die Zustellung entweder erfolgreich ist oder die Gültigkeitsdauer der Nachricht abläuft. Sobald das Netzwerk signalisiert, dass das Mobiltelefon wieder verfügbar ist, wird das SMSC aufgefordert, einen weiteren Versuch zu starten. Diese Beständigkeit ist der Kern eines Nachrichtenzentrums und der Grund, warum eine SMS „gesendet“ noch nicht als „zugestellt“ gilt – zwei Zustände, die Ihr DLR-Feed getrennt halten muss.

Verfolgen Sie eine A2P-SMS von der App zum Mobiltelefon

Hier ist der vollständige Weg einer einzelnen MT-Nachricht – beispielsweise eines Login-OTP, das von einer Bank in Riad an einen Abonnenten in einem GCC-Netzwerk gesendet wird – von Ihrem Code zum Telefon und zurück.

  1. Ihre Anwendung authentifiziert sich und öffnet eine SMPP-Bindung zum Aggregator/SMSC als ESME und sendet dann ein submit_sm, das die Ziel-MSISDN, die Absender-ID, die Kodierung und den Text enthält.
  2. Das SMSC prüft und speichert die Nachricht, weist ihr eine message_id zu und sendet sie in der submit_sm_resp zurück. Zu diesem Zeitpunkt ist die Nachricht akzeptiert, aber noch nicht zugestellt.
  3. Das SMSC wählt eine Route zum Zielbetreiber aus – idealerweise eine direkte Verbindung, andernfalls einen Pfad über einen oder mehrere SMS-Hubs.
  4. Die Nachricht erreicht das SMSC des Zielnetzbetreibers im Zielnetz.
  5. Das SMSC fragt den HLR des Betreibers (ein MAP SendRoutingInfoForSM) ab, um herauszufinden, wo der Teilnehmer aktuell bedient wird – die Adresse des bedienenden MSC/VLR.
  6. Der HLR gibt die Routing-Informationen zurück; der SMSC leitet die Nachricht (MT-ForwardSM) an diesen MSC weiter.
  7. Die zuständige MSC-Einheit ruft das Mobiltelefon über das Funknetz auf und übermittelt die Nachricht (die MT-Übermittlung).
  8. Das Mobiltelefon bestätigt den Empfang; die Empfangsbestätigung wird zurückgesendet und das terminierende SMSC generiert einen Zustellbericht.
  9. Die Zustellbestätigung wird über die Verbindung zurück zum SMSC des Aggregators gesendet, der sie als deliver_sm (oder als Webhook) an Ihren ESME weiterleitet und dabei die ursprüngliche message_id und einen endgültigen Status enthält.

Die Signalisierungsschritte 5–7 – die HLR-Abfrage und die MT-ForwardSM-Weiterleitung an die Vermittlungsstelle – finden innerhalb des SS7/Diameter-Kernnetzes des Betreibers statt und nutzen die MAP-Operationen des Mobilfunknetzes. Sie sind für den Nutzer nicht direkt sichtbar, aber sie sind der Grund dafür, dass eine Nachricht zwar innerhalb von Millisekunden „akzeptiert“ werden kann, die Zustellung aber länger dauert: Das Zielnetz muss den sich bewegenden Teilnehmer orten, bevor es die Nachricht zustellen kann.

Das HLR: Auffinden eines umziehenden Abonnenten

Das Home Location Register (HLR) ist die zentrale Datenbank für die Identität und den aktuellen Standort eines Teilnehmers in seinem Heimnetzwerk. Da sich Nutzer zwischen verschiedenen Vermittlungsstellen bewegen, kann das SMSC, das die Nachricht sendet, nicht davon ausgehen, wo eine Rufnummer bedient wird. Es fragt daher das HLR ab, welches das zuständige MSC/VLR zurückgibt, damit die Nachricht an die richtige Vermittlungsstelle weitergeleitet werden kann. Diese Abfrage dient auch der Rufnummernvalidierung: Eine HLR-Abfrage gibt vor dem Senden einer Nachricht an, ob eine Rufnummer aktiv, portiert oder im Roaming ist. Bei einem reibungslosen Routing ist diese Abfrage ein einziger interner Signalisierungsvorgang. Durchläuft eine Nachricht jedoch zunächst mehrere Zwischennetzwerke, erfolgt die Abfrage erst nach all diesen Zwischenstationen, was die Latenz erhöht und zusätzliche Fehlerquellen schafft.

Direkte Routen vs. Multi-Hop-Aggregation

Der oben beschriebene Pfad ist ideal: Ihr ESME (Emergency Service Manager) leitet die Nachricht an ein SMSC (SMS Center) weiter, das eine direkte Verbindung zum Zielnetzbetreiber herstellt. Die Realität sieht oft anders aus. Bei einer Multi-Hop-Aggregation durchläuft die Nachricht eine Kette von Wiederverkäufern und SMS-Hubs, bevor sie das Zielnetz erreicht – und jeder Hop ist ein Knotenpunkt, der Daten überschreiben, verzögern oder verwerfen kann. Drei Dinge verschlechtern sich mit zunehmender Anzahl an Hops:

  • Zuverlässigkeit: Jeder Zwischenschritt stellt eine weitere Warteschlange, eine weitere Firewall und einen weiteren Beteiligten dar, dessen Weg zum Betreiber möglicherweise unsicher ist und ohne Vorwarnung blockiert werden kann. Mehr Zwischenschritte bedeuten größere Schwankungen in der Zustellungsrate.
  • Erhaltung der Absenderkennung: Alphanumerische Absenderkennungen und registrierte Header können von einem Zwischenhändler überschrieben oder entfernt werden, sodass eine Nachricht, die als Ihre Marke gesendet wurde, von einer gemeinsam genutzten langen Nummer kommen kann – ein echtes Risiko in den GCC-Märkten, wo die Betreiber vorregistrierte Absenderkennungen verlangen.
  • DLR-Genauigkeit: Eine gültige Empfangsbestätigung eines Mobilfunkanbieters verliert über mehrere Zwischenstationen hinweg an Aussagekraft. Zwischenhändler senden möglicherweise eine Gateway-basierte Bestätigung („zugestellt“), die lediglich bedeutet, dass die Nachricht weitergeleitet wurde, nicht aber, dass das Endgerät sie empfangen hat. Dadurch spiegelt Ihr Statusbericht nicht mehr die tatsächlichen Gegebenheiten wider.

Deshalb ist die Anzahl der Hops zwischen Ihrer API und dem terminierenden Netzbetreiber die wichtigste Frage an einen Provider. Eine direkte Route erhält die Absender-ID, liefert eine DLR auf Betreiberebene und schließt die HLR-zu-Mobilteil-Sequenz ohne Zwischenhändler ab. Netzbetreiber und Unternehmen, die die gesamte Kette – angenommen, weitergeleitet, zugestellt, quittiert – einsehen müssen, nutzen eine ESME- und CDR-Ansicht, die jede Submit-SMS mit ihrer finalen DLR abgleicht, sowie ein SMSC-Gateway in Carrier-Qualität, das den Datenverkehr direkt terminiert, anstatt ihn weiterzuverkaufen.

BroadNet betreibt seit 2003 Direktverbindungen – 1,000+ Betreiberverbindungen in 200+ Ländern (in 86 davon direkt zum Netzbetreiber) mit einer Plattformverfügbarkeit von 99,99 % und einer Kapazität von bis zu 30.000 SMS/Sekunde pro Knoten. Wenn Sie sich als ESME über SMPP anmelden oder über unser SMSC-Gateway terminieren, erhalten Sie Verbindungen mit Zustellbestätigungen auf Betreiberebene und keine Umleitung über mehrere Hops, die Ihre Absenderkennung unbemerkt ändert.

Häufig gestellte Fragen

Wie liefert ein SMSC eine SMS aus?

Das SMSC verwendet das Store-and-Forward-Verfahren: Es empfängt und speichert die Nachricht und fragt anschließend den HLR des Zielnetzbetreibers ab, um den zuständigen MSC/VLR des Teilnehmers zu ermitteln. Die Nachricht wird an diese Vermittlungsstelle (MT-ForwardSM) weitergeleitet, die das Mobiltelefon benachrichtigt und zustellt. Ist das Mobiltelefon nicht erreichbar, reiht das SMSC die Nachricht in eine Warteschlange ein und versucht es innerhalb der Gültigkeitsdauer der Nachricht erneut. Anschließend wird eine Zustellbestätigung generiert.

Was ist ein ESME?

Eine ESME (External Short Messaging Entity) ist jede Anwendung, die sich mit einem SMSC (SMS-Servicecenter) verbindet, um SMS zu senden oder zu empfangen – beispielsweise ein OTP-Dienst, eine Kampagnenplattform oder ein Benachrichtigungssystem. Sie bindet sich über SMPP als Client an das SMSC und sendet mit dem Befehl `submit_sm` SMS an mobile Endgeräte, während das SMSC mit dem Befehl `deliver_sm` eingehende Antworten und Zustellbestätigungen zurücksendet. Kurz gesagt: Die ESME ist Ihre Software im Netzwerk.

Welchen Weg nimmt eine A2P-SMS von der App zum Endgerät?

Die Anwendung verbindet sich als ESME mit einem Aggregator/SMSC und sendet eine Submit-SMS. Das SMSC speichert die Nachricht und leitet sie – direkt oder über SMS-Hubs – an das SMSC des Zielnetzbetreibers weiter. Dieses SMSC fragt das HLR nach dem zuständigen MSC ab, leitet die Nachricht dorthin weiter, und die Vermittlungsstelle benachrichtigt das Mobiltelefon (MT-Zustellung). Die Empfangsbestätigung des Mobiltelefons wird als Zustellnachweis über dieselbe Kette zurückgesendet.

Referenzen

War das hilfreich?

Wie wir Inhalte erstellen und prüfen

Verfasst von

BroadNet-Redaktionsteam

Das Redaktionsteam veröffentlicht den BroadNet-Blog. Die Artikel entstehen mit den BroadNet-Teams für regulatorische Angelegenheiten, Produkt, Engineering, Branchenforschung und Betreiberlösungen und werden nach unseren redaktionellen Standards geprüft.

Das Journal, per E-Mail

Ein Aufsatz pro Monat. Sonst nichts.

Abonnieren Sie unseren Newsletter und wir senden Ihnen den nächsten Beitrag – ob zu Technik, Regulierung oder Industrie – direkt am Erscheinungstag. Keine E-Mail-Kampagnen, keine Produktpräsentationen, keine Weitergabe an Dritte. Abmeldung mit einem Klick.

Wir senden eine E-Mail pro Monat. Abmeldung jederzeit möglich. Siehe unsere Datenschutzerklärung.

Was Sie erhalten
  • Ausführlicher Text, kein Linkköder
    Sechs bis elf Minuten konzentriertes Schreiben zu einem einzigen Thema.
  • Verfasst von Bedienern
    Ingenieure, Zulassungsbeauftragte und Produktentwickler sind im eigenen Haus tätig.
  • Regionsabhängig
    MENA-zentrierte Sicht auf Regulierungsbehörden, Betreiber und Vertriebskanalmix.
  • Einmal im Monat
    Keine tröpfchenweise Kampagne. Nur ein Essay, wenn es einen zu teilen gibt.
Hör auf zu lesen. Fang an zu versenden.

Das meiste von dem, was wir schreiben, haben wir in der Produktion gelernt.

Wenn Ihnen dieser Artikel zusagte, sollten wir uns unterhalten. Schildern Sie uns Ihren Anwendungsfall, die Volumina und die Märkte – wir melden uns dann mit Routing, Preisen und einem Referenzkunden, den Sie kontaktieren können.

$ curl -X POST https://api.broadnet.me/sms/sendSms