Wie Sie die Leistung Ihres SMPP-Servers testen können
Ozeki SMS Gateway ist ein sehr schnelles SMS-Gateway-System. Es kann bis zu 1000 SMS/Sekunde auf einem Standard-Servercomputer übertragen. Dieses Dokument zeigt, wie Sie die SMPP-Leistung Ihres SMS-Gateway-Systems testen können.
Ozeki SMS Gateway enthält eine integrierte Funktion zum Testen der SMS-Leistung. Sie können diese Funktion nutzen, um die Leistung Ihres SMPP-Dienstes zu testen. Sie können die Leistung des SMPP-Clients oder des SMPP-Servers unabhängig voneinander testen oder Sie können ein Testsystem mit zwei Computern einrichten und den Gesamtdurchsatz des Systems testen. In dieser Anleitung erfahren Sie mehr über die Testkomponenten, und wir stellen ein System vor, das Sie in Ihrem eigenen Netzwerk einrichten können, um die Leistung Ihrer Dienste zu testen.
Wie Sie die Leistung Ihres SMPP-Servers testen können (Einfache Anweisungen)
So testen Sie die Leistung Ihres SMPP-Servers:
- Starten Sie Ozeki SMS Gateway
- Fügen Sie einen neuen Tester-Benutzer hinzu
- Konfigurieren Sie die Verbindung des Tester-Benutzers
- Wählen Sie das Verbindungssymbol in der Symbolleiste
- Installieren Sie die Tester-Verbindung
- Geben Sie den Namen der Tester-Verbindung ein
- Gehen Sie zum Test-Tab des Tester-Benutzers
- Wählen Sie den Leistungstest
- Überprüfen Sie die SMPP-Serverleistung in den Protokollen
SMPP-Geschwindigkeitstest-Systemarchitektur
Das Testsystem, das wir für Leistungstests verwenden, besteht aus zwei Computern: Computer "A" und Computer "B". Computer "A" hat einen SMPP-Client installiert und die Tester-Benutzerkomponente ist so konfiguriert, dass sie uns beim Generieren von Testnachrichten hilft. Computer "B" hat einen SMPP-Server konfiguriert, der die SMPP-Client-Verbindung von Computer "A" akzeptiert. Computer "B" nimmt alle von Computer "A" gesendeten SMS-Nachrichten entgegen und leitet diese Nachrichten an eine sogenannte Tester-Verbindung weiter. Die Tester-Verbindung "verschluckt" alle Nachrichten. Diese Architektur ist in Abbildung 1 dargestellt.
Wie viel kostet der Leistungstest?
Dieser Testaufbau leitet keine Nachrichten an das Mobilfunknetz weiter, daher müssen Sie sich keine Sorgen über SMS-Gebühren machen. Alle Nachrichten bleiben im Haus. Die Testnachrichten werden auf Computer "A" erstellt, sie reisen durch Ihr Computernetzwerk zu Computer "B", wo sie von der "Tester-Verbindung" "verschluckt" werden.
Welche Hardware sollte ich verwenden?
Sie können jede Computerhardware verwenden, die Windows oder Linux ausführen kann und
die den SMS-Gateway-Systemanforderungen entspricht. Beachten Sie, dass
die Leistung Ihres Systems stark von der Hardwarekonfiguration abhängt. In den
Tests, die wir durchgeführt haben, haben wir folgende Konfiguration verwendet:
Computer A:
CPU: Intel(R) Core(TM) i7-9700K CPU@3.60 GHz
RAM: Corsair Vengeance 64 GB (2x32GB) 3200Mhz DDR4
HDD: Samsung 970 EVO Plus 1TB NMe M.2(2280) Solid State Drive (SSD)
Motherboard: ASUS Prime Z390M-Plus LGA1151 Gen2
OS: Windows 10 Professional
Software: Ozeki 10 SMS Gateway v10.3.100
Computer B:
CPU: Intel(R) Core(TM) i7-9700K CPU@3.60 GHz
RAM: Corsair Vengeance 64 GB (2x32GB) 3200Mhz DDR4
HDD: Samsung 970 EVO Plus 1TB NMe M.2(2280) Solid State Drive (SSD)
Motherboard: ASUS Prime Z390M-Plus LGA1151 Gen2
OS: Windows 10 Professional
Software: Ozeki 10 SMS Gateway v10.3.100
Netzwerk: 1Gbps Ethernet-Verbindung über einen HP Desktop-Switch
Dieser Aufbau war in der Lage, 1000 SMS-Nachrichten pro Sekunde zu liefern. Er lieferte 1 000 000 SMS-Nachrichten von Computer A zu Computer B in weniger als 16 Minuten.
Konfiguration von Computer "B"
Wenn Sie mit der Konfiguration des Systems beginnen, ist es eine gute Idee, mit der Konfiguration von Computer "B" zu beginnen. Der Grund dafür ist, dass dieser Computer die SMPP-Server-Funktionalität bereitstellt, und es ist besser, das SMPP- Benutzerkonto zuerst zu erstellen und den Client auf Computer "A" später so zu konfigurieren, dass er dieses Benutzerkonto verwendet.
Das erste Video zeigt Ihnen die Schritte, die Sie zur Konfiguration von Computer "B" unternehmen müssen. Das Video beginnt mit der Standardinstallation. Um das System zu installieren, folgen Sie bitte den Anweisungen im Ozeki SMS Gateway Installationshandbuch. Nach der Installation des Systems sollten Sie eine Tester-Verbindung und einen SMPP-Benutzer einrichten, um eingehende SMPP-Client-Verbindungen zu akzeptieren. Durch die Installation des SMPP- Benutzers aktiviert und konfiguriert Ozeki 10 SMS Gateway automatisch den integrierten SMPP- Server. Dieser SMPP-Server lauscht auf Port 9550. Beachten Sie, dass wir während der SMPP-Benutzereinrichtung einen Benutzernamen und ein Passwort angegeben haben. Wir haben smp1 als Benutzernamen und qwe123 als Passwort verwendet. Diese Anmeldedaten werden auch auf Computer "A" verwendet, um den SMPP-Client zu konfigurieren.
Konfiguration von Computer "A"
Video Nummer zwei zeigt die Schritte zur Konfiguration von Computer "A". Während der Konfiguration erstellen wir zunächst eine SMPP-Client-Verbindung. Beim Setup des SMPP-Clients geben wir die IP-Adresse von Computer "B" sowie den SMPP-Benutzernamen und das SMPP-Passwort an. Beachten Sie, dass wir die gleichen Anmeldedaten (smp1, qwe123) verwenden, die wir auf Computer "B" konfiguriert haben, als wir das SMPP-Benutzerkonto erstellt haben.
Nachdem die SMPP-Client-Verbindung erstellt wurde, richten wir einen Testbenutzer ein. Der Test- benutzer ist eine integrierte Testfunktion, die verwendet werden kann, um Test-SMS-Nachrichten durch das System zu senden. Sie können mit einem Klick große Mengen an Nachrichten generieren und versenden. Jede Nachricht wird eine eigene Telefonnummer und einen eindeutigen Nachrichtentext haben, um Echtzeitbedingungen zu simulieren. Sobald der Testbenutzer konfiguriert ist, sind Sie bereit für den Test.
Beachten Sie, dass wir davon ausgehen, dass die Firewall auf Computer "A" eingehende SMPP- (TCP/IP-)Verbindungen auf Port 9550 zulässt. Falls Sie dies noch nicht in Ihrer Firewall konfiguriert haben, finden Sie detaillierte Anweisungen zur Firewall-Einrichtung auf der Seite zur Konfiguration der Firewall für den SMPP-Server.
Um die Leistung Ihres Systems zu testen, müssen Sie viele SMS-Nachrichten generieren. Dies kann mit Hilfe des Testbenutzers erfolgen. Um einen Testbenutzer zu installieren, klicken Sie auf die Apps- Schaltfläche in der Symbolleiste und scrollen Sie, wie in der nächsten Abbildung gezeigt, zum Abschnitt Testing und klicken Sie auf die Install-Schaltfläche der Tester-Benutzerverbindung. (Abbildung 2)
Bevor der Testbenutzer erstellt wird, erscheint das Konfigurationsformular. Diese Verbindung benötigt keine weitere Konfiguration, Sie müssen lediglich einen Namen für die Verbindung angeben. (Abbildung 3) Wenn dies erledigt ist, klicken Sie einfach auf OK, um den Testbenutzer zu erstellen.
Der Schlüssel zur Erstellung des Testsystems ist die Installation der Tester- Serviceprovider-Verbindung. Diese Verbindung wird als Test-Serviceprovider verwendet, zu dem die Tester-Benutzerverbindung eine Verbindung herstellt. Um diese Verbindung zu erstellen, wählen Sie das Connect-Menü in der Symbolleiste und dann den Abschnitt Connections for testing. Um diese Verbindung zu installieren, müssen Sie sie aus der Liste der Serviceprovider auswählen und auf die Install-Schaltfläche klicken. (Abbildung 4)
Nachdem Sie auf Installieren geklickt haben, müssen Sie einen Namen für diese Tester- Verbindung angeben, und Sie können auf dem erweiterten Tab weitere Konfigurationen vornehmen, wie z.B. das Festlegen des Log-Levels oder das Aktivieren von Zustellberichten. (Abbildung 5)
Durchführung des Tests
Während des Tests haben wir 1.000.000 SMS-Nachrichten von Computer "A" an Computer "B" gesendet. Dieses Ereignis wurde auf beiden Computern aufgezeichnet. Beachten Sie, dass während des Tests die Videoaufnahme auf beiden Computern aktiv war, was sich auf die Leistung auswirkte. Unten sehen Sie die unbearbeiteten Videos, die den Nachrichtendurchsatz auf Computer "A" und Computer "B" zeigen. Erwähnenswert ist, dass Sie Geschwindigkeitsmessungen in Echtzeit für verschiedene Komponenten sehen werden. Sie werden feststellen, dass die Geschwindigkeit bei etwa 1500 SMS- Nachrichten pro Sekunde lag. Das bedeutet, dass es etwa 10-11 Minuten dauert, um die 1.000.000 SMS-Nachrichten von Computer "A" über die SMPP-Verbindung an Computer "B" zu übertragen.
An diesem Punkt haben Sie beide erforderlichen Tester-Verbindungen installiert und Ihr System ist bereit für den Test. Öffnen Sie dazu zunächst die Tester-Benutzerverbindung im Hauptmenü des SMS-Gateways. Hier können Sie im Test-Tab der Verbindung die Anzahl der Nachrichten auswählen, die der Test versenden soll. So können Sie Ihr System entweder mit nur einer einzigen Nachricht testen oder 100.000 Nachrichten auf einmal initiieren. Wie in Abbildung 6 zu sehen ist, wählen Sie den Test mit 100.000 Nachrichten, indem Sie auf die Schaltfläche "Send test (100,000)" klicken.
1 000 000 SMS versenden: Ansicht von Computer "A"
Auf Computer "A" wurden Nachrichten vom Tester-Benutzer über die Routing-Tabelle an den SMPP-Client und dann ins Netz gesendet. Während dieses Prozesses werden Sie sehen, dass die Geschwindigkeit bei etwa 1500 MPS lag. Wichtig ist, dass diese Geschwindigkeit während des gesamten Tests konstant blieb. Im Video sehen Sie, dass zunächst die 1 000 000 Nachrichten in den Postausgang des Systems hinzugefügt wurden und dann gesendet wurden, sobald Kapazität verfügbar war. Sie werden möglicherweise bemerken, dass die Anzahl der Nachrichten im Postausgang in zwei Komponenten aufgeteilt war. Sie sehen eine schwarze Zahl und eine rote Zahl. Die rote Zahl neben der Bezeichnung "Postausgang" zeigt an, dass einige Nachrichten in einen sogenannten "Zukunftspostausgang" hinzugefügt wurden. Dies ist erforderlich, um die Größe des Standard-Postausgangs (markiert mit der schwarzen Zahl) unter 50.000 zu halten, um eine hohe Leistung zu gewährleisten. Die grundlegende Idee hinter dieser Aufteilung ist, dass die Arbeit mit kleineren Datenmengen schneller ist. Sie werden auch sehen, dass, während Nachrichten aus dem Standard-Postausgang verschickt wurden, der Zukunftspostausgang in Chargen von 10.000 Nachrichten geleert wurde.
1 000 000 SMS versenden: Ansicht von Computer "B"
Auf Computer "B" kamen die Nachrichten im SMPP-Benutzerkonto an. Danach gingen sie durch die Routing-Tabelle und erreichten die SMPP-Tester-Verbindung. Sie werden feststellen, dass alle Komponenten mit einer konstanten Geschwindigkeit von etwa 1500 MPS arbeiteten. Am Ende des Tests zeigen wir auch den Kilometerzählerwert. Sie werden sehen, dass dieser bei 1.000.021 Nachrichten steht. Diese Zahl entspricht der Zahl, die Sie auf den Kilometerzählern von Computer "A" gesehen haben. Das bedeutet, dass tatsächlich 1.000.021 Nachrichten während des Tests gesendet wurden. Die 21 zusätzlichen Nachrichten sind kein Fehler. Sie enthalten Metainformationen über den Test und helfen den Entwicklern bei Ozeki, den Nachrichtenfluss besser zu verstehen. Sie können sie einfach ignorieren.
Wie kann ich die Testergebnisse überprüfen (Protokolldateien verwenden)
Der obige Test wurde ohne aktivierte Protokollierung durchgeführt. Protokollierung erfordert Festplatten-E/A, was bedeutet, dass der Computer mehr Dinge gleichzeitig erledigen muss. Mit aktivierter Protokollierung verringert sich der SMS-Durchsatz etwas, aber um unsere Testergebnisse zu überprüfen, um sicherzustellen, dass alle 1 000 000 SMS-Nachrichten von Computer "A" zu Computer "B" gingen, müssen wir die Protokollierung einschalten.
Der beste Ort, um die Protokollierung zu aktivieren, ist der SMPP-Benutzer auf Computer "B". An dieser Stelle können wir die SMPP-Transaktionen für alle eingehenden SMS-Nachrichten aufzeichnen. Im folgenden Video ist die Low-Level-Protokollierung für den SMPP-Benutzer aktiviert. Das bedeutet, dass jede SMPP-PDU während des Tests in eine Textdatei protokolliert wird. Nachdem die Protokollierung aktiviert wurde, haben wir einen Batch von 100 000 SMS-Nachrichten an das System gesendet. Sie werden feststellen, dass die Geschwindigkeit mit aktivierter Protokollierung auf etwa 1300 MPS sank. Wenn Sie das Video ansehen, können Sie sehen, dass Sie mit aktivierter Protokollierung die SMPP-Kommunikation in Echtzeit auf der GUI überwachen können. Am Ende des Videos werden Sie sehen, dass etwa 76 MByte Protokolldaten auf die Festplatte geschrieben wurden. 100 000 SMS führten zu 76 MB Protokoll, als wir die SMPP-Protokollierung aktivierten. Durch das Lesen des Protokolls in Notepad können Sie überprüfen, dass alle 100 000 SMS-Nachrichten empfangen wurden. Wenn Sie kein detailliertes Protokoll jeder SMPP-Transaktion benötigen, empfehlen wir, die Low-Level-Protokollierung zu deaktivieren, um Ressourcen zu sparen.
Durchführung eines Leistungstests mit Zustellberichten
Die SMS-Infrastruktur bietet Zustellberichte, die Bestätigungen sind, die an den Benutzer zurückgesendet werden, wenn eine SMS das Empfängergerät erreicht. Zustellberichte werden als standardmäßige SMS-Nachrichten im Mobilfunknetz übertragen. Wenn ein Zustellbericht angefordert wird, wird eine sogenannte Zustellbericht-SMS an den Absender zurückgesendet, wenn die SMS den Empfänger erreicht. Das bedeutet, dass jede ausgehende SMS eine eingehende SMS generiert. Wenn Sie Zustellberichte benötigen, benötigen Sie doppelte Kapazität von Ihrem SMS-Gateway.
Ein positiver Aspekt von Zustellberichten ist, dass sie in die entgegengesetzte Richtung übertragen werden, sodass die Netzwerkgeschwindigkeit nicht halbiert wird, wenn Zustellberichte aktiviert sind.
Im letzten Test haben wir die Zustellbericht-Simulation in der Tester-Verbindung auf Computer "B" aktiviert und Zustellbericht-Anfragen im Tester-Benutzer auf Computer "A" aktiviert. Diese Konfiguration ermöglicht es uns, die Leistung von Ozeki 10 SMS Gateway mit aktivierten Zustellberichten zu testen.
Konfiguration von Computer "A" für Zustellberichte
Um Computer "A" so zu konfigurieren, dass er für jede Test-SMS Zustellberichte anfordert, müssen Sie den erweiterten Tab des Konfigurationsformulars des Tester-Benutzers öffnen. Im erweiterten Tab öffnen Sie die Gruppe "Zustellberichte" und aktivieren das Kontrollkästchen "Zustellberichte anfordern".
Konfiguration von Computer "B" für Zustellberichte
Um Computer "B" zu konfigurieren, müssen Sie zwei Aufgaben erledigen. Zuerst sollten Sie die Simulation von Zustellberichten in der Tester-Verbindung aktivieren. Dies können Sie tun, indem Sie das Konfigurationsformular der Tester-Verbindung öffnen. Wählen Sie in diesem Formular den Reiter "Erweitert", öffnen Sie die Gruppenbox "Zustellberichte" und klicken Sie auf das Kontrollkästchen "Zustellberichte zurückgeben".
Der nächste Schritt besteht darin, die Unterstützung für Zustellberichte in den SMPP-Benutzereinstellungen zu konfigurieren. Öffnen Sie dazu das Konfigurationsformular des SMPP-Benutzers und stellen Sie sicher, dass die Bereinigungspolitik auf "Bereinigung bei Zustellberichten" und die Zustellberichtspolitik auf "Anfragen, wenn durch Nachricht angefordert" eingestellt ist. Die Bereinigungseinstellung bedeutet, dass die vom SMPP-Client gesendeten SMS-Nachrichten im Ordner "Gesendete Elemente" bleiben, bis ein passender Zustellbericht eingeht. Dies ermöglicht es dem System, eingehende Zustellberichte mit zuvor gesendeten Nachrichten abzugleichen. Dies ist eine Voraussetzung, um die SMPP-Client-Verbindung korrekt mit den entsprechenden Nachrichtenreferenzen zu benachrichtigen, wenn der Zustellbericht über die SMPP-Verbindung zurückgegeben wird.
Durchführung des Leistungstests mit SMS-Zustellberichten
In dem durchgeführten Leistungstest haben wir die SMPP-Low-Level-Protokollierung und die Zustellberichtszuordnung aktiviert. Sie werden sehen, dass die Geschwindigkeit zunächst sprunghaft ansteigt, da wir nun einen bidirektionalen Transport nutzen. Nachrichten können in beide Richtungen mit der vom Protokoll und Netzwerk gebotenen Geschwindigkeit übertragen werden. Nach einiger Zeit sinkt diese Geschwindigkeit auf etwa 1000 SMS pro Sekunde in beide Richtungen. Die Geschwindigkeit schwankt, weil die Zustellberichte nicht gleichmäßig generiert werden, um reale Bedingungen zu simulieren. In der Realität kommen einige Zustellberichte deutlich später an. (Wenn beispielsweise ein Mobiltelefon ausgeschaltet und einige Tage später wieder eingeschaltet wird, kann der Zustellbericht mehrere Tage nach dem Versand der ursprünglichen Nachricht eintreffen.)
Sie werden möglicherweise auch bemerken, dass das SMPP-Kommunikationsprotokoll in Echtzeit auf der GUI aktualisiert wird, was etwas Kapazität verbraucht. In einem realen System werden Sie dieses Protokoll wahrscheinlich deaktiviert haben.
Ein weiterer bemerkenswerter Punkt ist der Kilometerzähler. Sie werden zwei ansteigende Zahlen sehen statt einer. Dies liegt daran, dass wir nun sowohl ausgehende SMS-Nachrichten als auch eingehende Zustellberichte haben. Sie werden auch sehen, dass die Größe der Eingangs-Warteschlange zunimmt. Hier werden Zustellberichte gespeichert, bis sie über die SMPP-Client-Verbindung übertragen werden können.
Am Ende des Tests werden Sie einen Geschwindigkeitsabfall bemerken. Dies liegt daran, dass in dieser Phase keine eingehenden Nachrichten verarbeitet werden müssen und die Anzahl der zurückzugebenden Zustellberichte geringer ist als die Systemkapazität. Wenn es mehr Nachrichten gäbe, würde die Geschwindigkeit wieder ansteigen.
Fazit
Wir können mit Sicherheit sagen, dass der Ozeki 10 SMS-Gateway SMPP-SMS-Nachrichten mit einer Rate von 1000 SMS-Nachrichten pro Sekunde über das Netzwerk liefern kann. Diese Software ist eine der schnellsten (wenn nicht die schnellste) in ihrem Marktsegment. Sie werden Schwierigkeiten haben, etwas Besseres zu finden.
More information