BroadNet
Grundlagen Anfänger

SMS-Grundlagen

Wie eine SMS aufgebaut, kodiert und segmentiert wird — vom 160-Zeichen-Limit und GSM 03.38 bis zu Zustellbestätigungen und A2P vs. P2P.

5 Unterricht3 Min. LesezeitStandardbasiert · selbstgesteuert
DiagrammSo erreicht eine A2P-Nachricht das Telefon
  1. Ihre AnwendungVersand über REST API oder SMPP
  2. BroadNet-PlattformValidiert, routet und fakturiert jede Nachricht
  3. SMSC des BetreibersDirekte Operator-Anbindung
  4. Endgerät des AbonnentenDie Nachricht wird zugestellt
Der Zustellbericht (DLR) wird über denselben Pfad an Ihren Webhook zurückgesendet
Lektion 01

Der Aufbau einer SMS

SMS — Short Message Service — wurde als Teil von GSM standardisiert und transportiert eine Nutzlast von 140 Byte. Diese feste Größe ist der Ursprung jedes Zeichenlimits, dem Sie begegnen werden: Bei der SMS-Länge geht es letztlich immer darum, in 140 Byte zu passen.

Eine Nachricht reist entweder als MO (Mobile Originated — vom Mobiltelefon gesendet) oder als MT (Mobile Terminated — an ein Mobiltelefon zugestellt). Application-to-Person-Verkehr ist fast ausschließlich MT: Ihre Plattform übermittelt die Nachricht, und das Netz stellt sie dem Teilnehmer zu.

Zwischen Übermittlung und Mobiltelefon steht das SMSC (Short Message Service Centre), das die Nachricht speichert und weiterleitet, sobald der Empfänger erreichbar ist. Ist das Telefon ausgeschaltet, hält das SMSC die Nachricht zurück, bis die Gültigkeitsdauer abläuft.

Lektion 02

Kodierung: GSM 7-Bit vs. UCS-2

Einfacher lateinischer Text verwendet das in GSM 03.38 definierte GSM-7-Bit-Standardalphabet. Da jedes Zeichen 7 Bit belegt, fassen 140 Byte 160 Zeichen — das bekannte Ein-Segment-Limit.

Eine Handvoll gängiger Symbole (etwa { } [ ] ~ ^ | \ und das Eurozeichen) befinden sich in einer Erweiterungstabelle und kosten jeweils zwei Zeichen. Es ist leicht, unbemerkt eine Segmentgrenze zu überschreiten, wenn Ihr Text eines dieser Zeichen enthält.

Sobald eine Nachricht ein Zeichen außerhalb dieses Alphabets enthält — Arabisch, Kyrillisch, Chinesisch oder ein Emoji —, wechselt die gesamte Nachricht zu UCS-2, einer 16-Bit-Unicode-Kodierung. Jetzt belegt jedes Zeichen 2 Byte, sodass ein einzelnes Segment nur 70 Zeichen fasst.

Lektion 03

Segmentierung und Verkettung

Überschreitet der Text ein Segment, wird er aufgeteilt und auf dem Mobiltelefon wieder zusammengesetzt. Dazu wird jedem Teil ein kleiner User Data Header (UDH) hinzugefügt, der Platz in der Nutzlast beansprucht. Deshalb fassen verkettete Segmente weniger Zeichen als ein eigenständiges.

In GSM 7-Bit fassen verkettete Segmente jeweils 153 statt 160 Zeichen; in UCS-2 sind es 67 statt 70. Eine 300 Zeichen lange lateinische Nachricht sind drei Segmente; dieselbe Länge auf Arabisch sind fünf. Abgerechnet wird pro Segment, daher bestimmt die Kodierung direkt die Kosten.

Ein häufiger, vermeidbarer Fehler ist eine Nachricht, die knapp über einer Grenze liegt — 161 Zeichen werden zu zwei Segmenten und verdoppeln den Preis jedes Versands. Ein paar Wörter zu kürzen oder ein Symbol aus der Erweiterungstabelle zu entfernen, kann die Rechnung im großen Maßstab halbieren.

Lektion 04

Zustellbestätigungen und Status

Eine Zustellbestätigung (Delivery Receipt, DLR) ist die Bestätigung des Netzes darüber, was mit einer Nachricht geschehen ist. Sie meldet einen Endstatus wie zugestellt, nicht zugestellt, abgelaufen oder abgelehnt, und häufig einen betreiberspezifischen Fehlercode, der den Grund erklärt.

DLRs sind unverzichtbar für Abgleich und Qualitätsmessung. Sie nur dort anzufordern, wo Sie sie auch auswerten, hält den Verkehr sauber; eine Bestätigung „zugestellt" bestätigt, dass das Mobiltelefon die Nachricht erhalten hat, während „abgelaufen" bedeutet, dass es innerhalb der Gültigkeitsdauer nie erreichbar war.

Da betreiberspezifische Fehlercodes je Route variieren, normalisieren erfahrene Versender sie in eine einheitliche Taxonomie — Teilnehmer nicht erreichbar, ungültige Nummer, als Spam blockiert —, damit die Qualität über Zielländer hinweg vergleichbar wird.

Lektion 05

A2P vs. P2P

P2P (Person-zu-Person) ist die konversationelle SMS, die ein Mensch einem anderen sendet. A2P (Application-to-Person) ist programmatischer Verkehr aus Software: Alarme, OTPs, Benachrichtigungen und Marketing. Auf dem Mobiltelefon sehen sie identisch aus, sind aber kommerziell und technisch unterschiedlich.

Betreiber bepreisen und routen A2P anders und erwarten, dass er über offizielle, abgerechnete Kanäle ankommt. A2P, der über P2P-Routen zugestellt wird, um Terminierungsgebühren zu umgehen, ist eine graue Route — anfangs günstiger, aber anfällig für Filterung, schlechte Zustellbarkeit und Compliance-Risiken.

Diese Trennung zu verstehen ist die Grundlage für alles Weitere: Routing-Qualität, Sender-ID-Regeln und Firewalls existieren alle, weil Betreiber legitimen, bezahlten A2P-Verkehr von Umgehung unterscheiden müssen.

Wichtigste Erkenntnisse
  • Die Nutzlast einer SMS beträgt 140 Byte; deshalb fasst GSM 7-Bit 160 Zeichen und UCS-2 nur 70.
  • Jedes Nicht-GSM-Zeichen (Arabisch, Emoji) lässt die gesamte Nachricht zu UCS-2 wechseln und verkleinert das Limit.
  • Verkettete Segmente kosten Header-Platz (153/67 Zeichen), und Sie zahlen pro Segment.
  • DLRs schließen den Kreislauf bei der Zustellung; A2P und P2P sehen gleich aus, werden aber unterschiedlich geroutet und bepreist.
Setzen Sie es in die Praxis um

Bauen Sie auf dem auf, was Sie gerade gelernt haben.

Besprechen Sie Ihren Anwendungsfall mit einem echten Ingenieur oder öffnen Sie die Entwicklerdokumentation und senden Sie eine Nachricht über die in diesem Kurs beschriebenen Wege.

Warum von BroadNet lernen?
  • Seit2003
  • Länder200+
  • Betreiberlinks1,000+