Übermittlungsgröße für eine 160-Zeichen-SMS über HTTP-SMS-API

Die Übermittlungsgröße in Bytes für das Senden einer 160-Zeichen-SMS über eine HTTP-SMS-API beträgt etwa 640–840 Bytes. Dies umfasst die SMS-Nutzlast, HTTP-Anfragekomponenten und Netzwerk-Overhead. Im Folgenden finden Sie eine detaillierte Aufschlüsselung:

1. SMS-Nachrichtengröße

  • Zeichenkodierung: Eine Standard-SMS verwendet den GSM-7-Zeichensatz, der 160 Zeichen unterstützt. Jedes Zeichen wird mit 7 Bit kodiert, aber die Nachricht wird aufgrund von SMS-Protokollbeschränkungen in ein 140-Byte (1120-Bit)-Nutzlastpaket gepackt.
  • Berechnung: 160 Zeichen × 7 Bit = 1120 Bit = 140 Bytes.
  • Hinweis: Wenn Nicht-GSM-7-Zeichen (z.B. Emojis) verwendet werden, wechselt die Nachricht zur UCS-2-Kodierung (2 Bytes pro Zeichen, max. 70 Zeichen). Da die Abfrage 160 Zeichen angibt, wird GSM-7 angenommen.

2. HTTP-Anfrage-Overhead

Die HTTP-POST-Anfrage enthält Header und einen Body mit Parametern wie to, from und message.

  • Header: Typische Header sind Authorization, Content-Type und Host. Beispiel:
  • POST /sms.do HTTP/1.1
    Host: api.smsapi.com
    Authorization: Bearer token_api_oauth
    Content-Type: application/x-www-form-urlencoded
    Content-Length: <length>
            
  • Header-Größe: Etwa 200–300 Bytes, abhängig von Token-Länge und URL.
  • Body: Beispiel-Body (z.B. SMSAPI-Format):
  • to=4412334445566&from=Test&message=<160-Zeichen-Nachricht>&format=json
            
  • Body-Aufschlüsselung:
    • to=4412334445566: ~15 Bytes (12-stellige Telefonnummer).
    • from=Test: ~9 Bytes (kurze Absender-ID).
    • message=<160-Zeichen-Nachricht>: ~160 Bytes (GSM-7-Zeichen in UTF-8).
    • format=json: ~11 Bytes.
    • Gesamt-Body: ~200 Bytes (inklusive Trennzeichen).
  • Gesamte HTTP-Anfrage: Header (~200–300 Bytes) + Body (~200 Bytes) = 400–500 Bytes.

3. Netzwerk- und Protokoll-Overhead

  • TCP/IP: Fügt ~20 Bytes (TCP) + ~20 Bytes (IP) pro Paket hinzu, typischerweise 1–2 Pakete (~40–80 Bytes).
  • TLS: HTTPS fügt ~50–100 Bytes für Verschlüsselungs-Overhead hinzu (Handshake, Record-Header).
  • Gesamt: ~100–200 Bytes.

4. Gesamte Übermittlungsgröße

  • SMS-Nutzlast: 140 Bytes.
  • HTTP-Anfrage: 400–500 Bytes.
  • Netzwerk/TLS: 100–200 Bytes.
  • Gesamt: 140 + 400–500 + 100–200 = 640–840 Bytes.

5. Überlegungen

  • API-Variationen: Unterschiedliche APIs (z.B. Twilio, MessageBird) können eigene Parameter haben, was die Größe leicht verändert.
  • Einzelnes Segment: Eine 160-Zeichen-SMS passt in ein Segment, daher sind keine Verkettungs-Header erforderlich.
  • Kompression: Wird selten für kleine Anfragen wie SMS-Übermittlungen verwendet.

Endgültige Antwort

Die Übermittlungsgröße für eine 160-Zeichen-SMS über eine HTTP-SMS-API beträgt etwa 640–840 Bytes. Für genaue Werte überprüfen Sie das Anfrageformat und die Netzwerkkonfiguration der jeweiligen API.

More information