<ph type="x-smartling-placeholder"></ph> Quelle auf GitHub ansehen
OpenThread bietet TCP-Befehle zur Verwendung mit einem Thread-Netzwerk zum Testen von Peer-to-Peer-Verbindungen.
Kommunikation zwischen TCP-Endpunkten. cli tcp
stellt ein Beispiel-TCP bereit
Endpunkt und einen Beispiel-TCP-Listener, mit dem alle tcp
-Befehle interagieren.
In der Befehlsübersicht und im folgenden Beispiel finden Sie Informationen zum Initialisieren wie Sie eine Verbindung zu einem Peer-TCP-Endpunkt herstellen, und wie eine Nachricht an den Peer gesendet wird.
TCP-Befehle
Geben Sie help
ein, um eine Liste der tcp
-Befehle aufzurufen:
tcp help
abort
benchmark
bind
connect
deinit
init
listen
send
sendend
stoplistening
Done
Befehl init
Verwenden Sie den Befehl tcp init
, um das TCP-Modul zu initialisieren und die TCP-Kommunikation zu starten.
Das TCP-Modul kann dann viele Funktionen ausführen, z. B. das Überwachen von eingehenden
Verbindungen mit dem von der tcp
-Befehlszeile bereitgestellten Beispiel-TCP-Listener.
So deinitialisieren Sie den Beispiel-TCP-Listener und den Beispiel-TCP-Endpunkt:
führen Sie den Befehl tcp deinit
aus.
Befehl bind
So binden Sie den Beispiel-TCP-Endpunkt, nachdem Sie das TCP-Modul initialisiert haben:
Führen Sie den Befehl tcp bind
aus, um dem TCP-Endpunkt eine IPv6-Adresse und einen Port zuzuweisen.
Dadurch wird der Endpunkt für die Kommunikation gebunden. IPv6-Adresse und -Port zuweisen
wird auch als „Endpunkt benennen“ bezeichnet.
Befehl listen
So verwenden Sie den Beispiel-TCP-Listener, nachdem Sie das TCP-Modul initialisiert haben:
Führen Sie den Befehl tcp listen
aus und geben Sie die IPv6-Adresse und den Überwachungsport an.
Um zu verhindern, dass der Beispiel-TCP-Listener eingehende TCP-Verbindungen abhört,
führen Sie den Befehl tcp stoplistening
aus.
Befehl connect
Ein tcp connect
-Befehl verbindet den Beispiel-TCP-Endpunkt mit der Adresse eines Peer-TCP-Endpunkts.
Befehl send
Sobald eine Verbindung zwischen zwei Knoten hergestellt ist, geben Sie einen tcp send
-Befehl aus
um dem Peer eine Nachricht zu senden.
benchmark
-Befehle
Sobald eine TCP-Verbindung zwischen zwei Knoten hergestellt wurde, können Sie optional die Methode
benchmark
-Befehle zum Senden großer Datenmengen zwischen den zu testenden Knoten
Netzwerkbandbreite und -leistung. Die Anzahl der übertragenen Byte in Millisekunden
sowie der TCP-Goodput werden in den benchmark
-Ergebnissen bereitgestellt.
Befehl abort
Wenn Sie eine TCP-Verbindung sofort und unauffällig beenden möchten, führen Sie den Befehl tcp abort
aus.
auf einem der Knoten, um den TCP-Endpunkt in einen geschlossenen Zustand zu versetzen.
Befehl sendend
Wenn von einem Knoten die Daten
an den anderen Knoten gesendet wurden, kann der erste
führen Sie einen tcp sendend
-Befehl aus, um den zweiten Knoten
Daten. Der zweite Knoten kann auch eine tcp sendend
an den ersten Knoten senden.
Sobald jeder Knoten eine TCP: Disconnected
-Nachricht erhält,
zwischen den beiden Knoten abgerissen. Es wird empfohlen, ist aber nicht erforderlich,
führen Sie diesen Befehl aus,
wenn die Datenübertragung abgeschlossen ist.
Nachricht zwischen zwei Knoten senden
Initialisieren Sie auf Knoten 1 das TCP-CLI-Modul und warten Sie dann auf eingehende Verbindungen mithilfe des Beispiel-TCP-Listeners.
tcp init
tcp listen :: 30000
Die Verwendung von
::
bedeutet, dass derlisten
die nicht angegebene IPv6-Adresse verwenden soll, Dadurch weist der TCP/IPv6-Stack die IPv6-Adresse zu. Der Port ist 30000.Initialisieren Sie auf Knoten 2 das TCP-CLI-Modul, stellen Sie eine Verbindung zu Knoten 1 her und senden Sie Botschaft zu vermitteln.
tcp init
tcp connect fe80:0:0:0:a8df:580a:860:ffa4 30000
tcp send hello
Überprüfung
Auf Grundlage der oben gezeigten Beispielschritte ist folgende Ausgabe zu erwarten:
- Nachdem Knoten 2 den
tcp connect
-Befehl ausgeführt hat, sollte Knoten 2 die NachrichtTCP: Connection established
. - Knoten 1 sollte dann die Nachrichten empfangen (mit Beispiel-IPv6-Adresse und -Port):
<ph type="x-smartling-placeholder">
- </ph>
Accepted connection from [fe80:0:0:0:8f3:f602:bf9b:52f2]:49152
TCP: Connection established
- Nachdem Knoten 2 den
tcp send
-Befehl ausgeführt hat, sollte Knoten 1 die NachrichtTCP: Received 5 bytes: hello