TCP

Funktion

Führt einfache Tests oder Befehlssequenzen an einem TCP-Port durch. Prüft, ob ein TCP-Port offen ist.

Alarmierung

Verbindungszeit, Übertragungszeit, Reihenfolge

Das Transmission Control Protocol (TCP) ist eines der Kernprotokolle der Internetprotokollsuite. TCP gewährleistet eine zuverlässige und geordnete Übertragung eines Byte-Stroms und eignet sich daher für Anwendungen wie Dateiübertragung und E-Mail. Es ist in der Internet-Protokollsuite so wichtig, dass die gesamte Suite manchmal als „TCP/IP-Protokollsuite“ bezeichnet wird. TCP ist das Transportprotokoll, das die einzelnen Kommunikationen zwischen Servern und Web-Clients verwaltet. TCP unterteilt die HTTP-Nachrichten in kleinere Teile, sogenannte Segmente, die an den Ziel-Client gesendet werden. Es ist außerdem dafür verantwortlich, die Größe und die Rate zu steuern, mit der Nachrichten zwischen dem Server und dem Client ausgetauscht werden.

Das Internetprotokoll (IP) funktioniert durch den Austausch von Informationsgruppen, die als Pakete bezeichnet werden. Pakete sind kurze Byte-Sequenzen, die aus einem Header und einem Body bestehen. Der Header beschreibt das Ziel des Pakets, anhand dessen Router im Internet das Paket weiterleiten – in der Regel in die richtige Richtung –, bis es sein endgültiges Ziel erreicht. Der Body enthält die Anwendungsdaten.

Bei Überlastung kann das IP-Protokoll Pakete verwerfen, und aus Effizienzgründen können zwei aufeinanderfolgende Pakete im Internet unterschiedliche Routen zum Ziel nehmen. In diesem Fall können die Pakete in falscher Reihenfolge am Ziel ankommen.

Die TCP-Softwarebibliotheken nutzen das IP-Protokoll und bieten Anwendungen eine einfachere Schnittstelle, indem sie die meisten der zugrunde liegenden Paketstrukturen verbergen, fehlgeordnete Pakete neu anordnen, Netzwerküberlastungen minimieren und verworfene Pakete erneut übertragen. Somit vereinfacht TCP die Entwicklung von Netzwerkanwendungen erheblich.

TCP-Details

TCP-Parameter

Parameter

Beschreibung

Port

Geben Sie den TCP-Port ein, der getestet werden soll

Sequenz

Für erweiterte Anwendungstests kann eine Abfolge von „Send“- und „Expect“-Befehlen festgelegt werden. „Send“ sendet einen Befehl, „Expect“ wartet auf einen bestimmten Ausdruck vom Remote-Host. Siehe Beispiel unten.

Für die Felder „Send“ und „Expect“ können reguläre Ausdrücke (Perl) verwendet werden (.* = beliebiges Zeichen). Einige Beispiele finden Sie unter folgendem Link: http://www.boost.org/doc/libs/1_34_1/libs/regex/doc/syntax_perl.html

TCP-Werte und Alarm Limits

Wert / Alarm Limit

Beschreibung

Verbindungszeit

Zeit bis zum Herstellen der Verbindung zum TCP-Port

Übertragungszeit

Zeit für die Datenübertragung

Sequenz

Prüfen Sie, ob bei der angegebenen Sequenz in allen Schritten oder in einem bestimmten Schritt Fehler aufgetreten sind.

Fehlercode

Generischer Job-Fehlercode (siehe Abschnitt „Job-Fehlercodes“)

TCP-Beispiele

Beispiel 1 – Prüfen, ob der TCP-Port 443 auf einem Gerät offen ist, ohne eine Sequenz anzugeben

Port

443

Ausgabe 1

Beispiel 2 – Testen einer Verbindungssequenz zu einem FTP-Server

Die folgende Sequenz für einen öffentlichen FTP-Server (speedtest.tele2.net) versucht, sich mit einem anonymen Konto anzumelden, listet anschließend das aktuelle Verzeichnis auf und beendet den Vorgang:

Die erwarteten Textzeichenfolgen lassen sich am besten über die Linux-Befehlszeile mit dem Befehl „telnet“ testen:

$ telnet speedtest.tele2.net 21
Trying 90.130.70.73...
Connected to speedtest.tele2.net.
Escape character is '^]'.
220 (vsFTPd 2.3.5)
user anonymous
331 Please specify the password.
pass anonymous
230 Login successful.
pwd
257 "/"
quit
221 Goodbye.
Connection closed by foreign host.

Nun kann der erwartete Text in die Sequenz des Jobs eingegeben werden. Achten Sie darauf, Sonderzeichen mit einem Backslash zu escapen (z. B. die Klammern).

Fügen Sie an jedes Sequenzelement \r\n an, was einen Wagenrücklauf bedeutet.

Ausgabe 2