nl::Weave::Profiles::WeaveTunnel::WeaveTunnelControl

Zusammenfassung

Konstruktoren und Zerstörer

WeaveTunnelControl(void)

Öffentliche Typen

TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus) typedef.
void(*
Funktionszeiger auf den Handler, der von einer höheren Ebene festgelegt wird, um nach dem Empfang einer StatusReport-Nachricht als Antwort auf eine gesendete Tunnelsteuerungsnachricht zu handeln.

Öffentliche Attribute

OnTunStatusRcvd
mCtrlResponseTimeout
uint16_t
Das Zeitlimit(in Sekunden) für Antworten zum Steuern von Nachrichten.
mShortcutTunnelAdvInterval
uint16_t
Intervall in Sekunden für regelmäßige Tunnel-Advertisings mit Kurzbefehlen.

Öffentliche Funktionen

Close(void)
Schließen Sie WeaveTunnelControl, indem Sie alle ausstehenden Austauschkontexte schließen und Mitglieder zurücksetzen.
DisableShortcutTunneling(void)
void
Deaktivieren Sie das Shortcut-Tunneling, um Anzeigen entweder vom Border Gateway oder Mobile-Client zu senden und auch Anzeigen von Kurzbefehl-Tunnel-Gegenstücken zu überwachen.
EnableShortcutTunneling(void)
void
Aktivieren Sie das Shortcut-Tunneling, indem Sie Werbung entweder vom Border Gateway oder vom Mobile-Client senden und auch Anzeigen von Kurzbefehl-Tunnel-Gegenstücken überwachen.
Init(WeaveTunnelAgent *tunAgent, TunnelStatusRcvdFunct statusRcvd)
Initialisieren Sie WeaveTunnelControl, um relevante Mitglieder wie den Weave-Tunnel-Agent und Callbacks festzulegen.
IsPeerInShortcutTunnelCache(uint64_t peerId)
bool
Prüfen Sie, ob der Peer im Cache für Tunnelverknüpfungen zum lokalen Senden vorhanden ist.
Reconnect(WeaveTunnelConnectionMgr *conMgr)
Stellen Sie eine neue Verbindung zum Peer-Knoten her.
SendBorderRouterAdvertise(void)
Senden Sie eine Werbenachricht an einen Border-Router, um seine Fabric-ID zu bewerben.
SendMessageOverTunnelShortcut(uint64_t peerId, WeaveMessageInfo *msgHdr, PacketBuffer *msg)
Senden Sie die Nachricht über die Tunnelverknüpfung.
SendMobileClientAdvertise(void)
Eine mobile Client-Werbenachricht senden, die seine Knoten-ID bewirbt.
SendTunnelClose(WeaveTunnelConnectionMgr *conMgr)
Eine Nachricht für das Schließen des Tunnels an den Peer-Knoten mit einer Reihe von Tunnelrouten senden.
SendTunnelOpen(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Eine „Tunnel Open“-Steuernachricht an den Peer-Knoten mit einer Reihe von Tunnelrouten senden.
SendTunnelRouteUpdate(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Steuernachricht für Tunnelroutenaktualisierung mit einer Reihe von Tunnelrouten an den Peer-Knoten senden.

Öffentliche statische Funktionen

HandleShortcutTunnelAdvertiseMessage(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
void
In WeaveMessageLayer registrierte Funktion zum Überwachen von Shortcut-Tunnelanzeigen und zum Aktualisieren des Cache.

Öffentliche Typen

TunnelStatusRcvdFunct

void(* TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus)

Funktionszeiger auf den Handler, der von einer höheren Ebene festgelegt wird, um nach dem Empfang einer StatusReport-Nachricht als Antwort auf eine gesendete Tunnelsteuerungsnachricht zu handeln.

Details
Parameter
[in] tType
Der Tunneltyp, d.h. Primäre oder Backup.
[in] tunStatus
Ein Verweis auf die StatusReport-Nachricht der Tunnelsteuerung.

Öffentliche Attribute

OnTunStatusRcvd

TunnelStatusRcvdFunct OnTunStatusRcvd

mCtrlResponseTimeout

uint16_t mCtrlResponseTimeout

Das Zeitlimit(in Sekunden) für Antworten zum Steuern von Nachrichten.

mShortcutTunnelAdvInterval

uint16_t mShortcutTunnelAdvInterval

Intervall in Sekunden für regelmäßige Tunnel-Advertisings mit Kurzbefehlen.

Öffentliche Funktionen

Schließen

WEAVE_ERROR Close(
  void
)

Schließen Sie WeaveTunnelControl, indem Sie alle ausstehenden Austauschkontexte schließen und Mitglieder zurücksetzen.

Details
Rückgabe
WEAVE_NO_ERROR

DisableShortcutTunneling

void DisableShortcutTunneling(
  void
)

Deaktivieren Sie das Shortcut-Tunneling, um Anzeigen entweder vom Border Gateway oder Mobile-Client zu senden und auch Anzeigen von Shortcut-Tunnel-Gegenstücken zu überwachen.

EnableShortcutTunneling

void EnableShortcutTunneling(
  void
)

Aktivieren Sie das Shortcut-Tunneling, indem Sie Werbung entweder vom Border Gateway oder vom Mobile-Client senden und auch Anzeigen von Kurzbefehl-Tunnel-Gegenstücken überwachen.

Init

WEAVE_ERROR Init(
  WeaveTunnelAgent *tunAgent,
  TunnelStatusRcvdFunct statusRcvd
)

Initialisieren Sie WeaveTunnelControl, um relevante Mitglieder wie den Weave-Tunnel-Agent und Callbacks festzulegen.

Details
Parameter
[in] tunAgent
Ein Zeiger auf das Objekt WeaveTunnelAgent.
[in] statusRcvd
Ein Zeiger auf einen Callback für den StatusRcvd-Handler.
Rückgabe
WEAVE_NO_ERROR

IsPeerInShortcutTunnelCache

bool IsPeerInShortcutTunnelCache(
  uint64_t peerId
)

Prüfen Sie, ob der Peer im Cache für Tunnelverknüpfungen zum lokalen Senden vorhanden ist.

Erneut verbinden

WEAVE_ERROR Reconnect(
  WeaveTunnelConnectionMgr *conMgr
)

Stellen Sie eine neue Verbindung zum Peer-Knoten her.

SendBorderRouterAdvertise

WEAVE_ERROR SendBorderRouterAdvertise(
  void
)

Senden Sie eine Werbenachricht an einen Border-Router, um seine Fabric-ID zu bewerben.

SendMessageOverTunnelShortcut

WEAVE_ERROR SendMessageOverTunnelShortcut(
  uint64_t peerId,
  WeaveMessageInfo *msgHdr,
  PacketBuffer *msg
)

Senden Sie die Nachricht über die Tunnelverknüpfung.

SendMobileClientAdvertise

WEAVE_ERROR SendMobileClientAdvertise(
  void
)

Eine mobile Client-Werbenachricht senden, die seine Knoten-ID bewirbt.

SendTunnelClose

WEAVE_ERROR SendTunnelClose(
  WeaveTunnelConnectionMgr *conMgr
)

Eine Nachricht für das Schließen des Tunnels an den Peer-Knoten mit einer Reihe von Tunnelrouten senden.

Nachricht für das Schließen des Tunnels an den Peer-Knoten senden.

Details
Parameter
[in] conMgr
Ein Zeiger auf das Objekt WeaveTunnelConnectionMgr.
Rückgabe
WEAVE_ERROR WEAVE_NO_ERROR bei Erfolg, andernfalls Fehler.

SendTunnelOpen

WEAVE_ERROR SendTunnelOpen(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Eine „Tunnel Open“-Steuernachricht an den Peer-Knoten mit einer Reihe von Tunnelrouten senden.

Details
Parameter
[in] conMgr
Ein Zeiger auf das Objekt WeaveTunnelConnectionMgr.
[in] tunRoutes
Liste der Präfixrouten, die der Routingtabelle hinzugefügt werden sollen.
Rückgabe
WEAVE_ERROR WEAVE_NO_ERROR bei Erfolg, andernfalls Fehler.

SendTunnelRouteUpdate

WEAVE_ERROR SendTunnelRouteUpdate(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Steuernachricht für Tunnelroutenaktualisierung mit einer Reihe von Tunnelrouten an den Peer-Knoten senden.

Details
Parameter
[in] conMgr
Ein Zeiger auf das Objekt WeaveTunnelConnectionMgr.
[in] tunRoutes
Liste der Präfixrouten, die der Routingtabelle hinzugefügt werden sollen.
Rückgabe
WEAVE_ERROR WEAVE_NO_ERROR bei Erfolg, andernfalls Fehler.

WeaveTunnelControl

 WeaveTunnelControl(
  void
)

Öffentliche statische Funktionen

HandleShortcutTunnelAdvertiseMessage

void HandleShortcutTunnelAdvertiseMessage(
  ExchangeContext *ec,
  const IPPacketInfo *pktInfo,
  const WeaveMessageInfo *msgInfo,
  uint32_t profileId,
  uint8_t msgType,
  PacketBuffer *payload
)

In WeaveMessageLayer registrierte Funktion zum Überwachen von Shortcut-Tunnelanzeigen und zum Aktualisieren des Cache.