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

Ringkasan

Konstruktor dan Destruktor

WeaveTunnelControl(void)

Jenis publik

TunnelStatusRcvdFunct)(uint8_t tType, StatusReport &tunStatus) typedef
void(*
Pointer fungsi ke pengendali yang ditetapkan oleh lapisan yang lebih tinggi untuk bertindak setelah menerima pesan StatusReport sebagai respons terhadap pesan kontrol Tunnel yang dikirim.

Atribut publik

OnTunStatusRcvd
mCtrlResponseTimeout
uint16_t
Waktu tunggu(dalam detik) respons untuk mengontrol pesan.
mShortcutTunnelAdvInterval
uint16_t
Interval dalam detik untuk iklan tunnel pintasan berkala.

Fungsi publik

Close(void)
Tutup WeaveTunnelControl dengan menutup konteks pertukaran yang belum terselesaikan dan mereset anggota.
DisableShortcutTunneling(void)
void
Nonaktifkan tunneling pintasan untuk mengirim iklan dari Gateway batas atau klien Seluler dan juga memproses iklan dari partner tunnel pintasan.
EnableShortcutTunneling(void)
void
Aktifkan tunneling pintasan dengan mengirimkan iklan dari Gateway batas atau klien Seluler dan juga mendengarkan iklan dari pasangan tunnel pintasan.
Init(WeaveTunnelAgent *tunAgent, TunnelStatusRcvdFunct statusRcvd)
Lakukan inisialisasi WeaveTunnelControl untuk menetapkan anggota yang relevan seperti Agen Weave Tunnel dan callback.
IsPeerInShortcutTunnelCache(uint64_t peerId)
bool
Verifikasi apakah peer ada di cache pintasan tunnel untuk mengirim secara lokal.
Reconnect(WeaveTunnelConnectionMgr *conMgr)
Hubungkan kembali dengan node pembanding.
SendBorderRouterAdvertise(void)
Mengirim pesan iklan router perbatasan yang mengiklankan ID fabric-nya.
SendMessageOverTunnelShortcut(uint64_t peerId, WeaveMessageInfo *msgHdr, PacketBuffer *msg)
Kirim pesan melalui pintasan tunnel.
SendMobileClientAdvertise(void)
Mengirim pesan iklan seluler yang mengiklankan ID Node-nya.
SendTunnelClose(WeaveTunnelConnectionMgr *conMgr)
Kirim pesan kontrol Tunnel Close ke node peer dengan serangkaian rute tunnel.
SendTunnelOpen(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Kirim pesan kontrol Tunnel Open ke node peer dengan serangkaian rute tunnel.
SendTunnelRouteUpdate(WeaveTunnelConnectionMgr *conMgr, WeaveTunnelRoute *tunRoute)
Kirim pesan kontrol Update Rute Tunnel ke node peer dengan serangkaian rute tunnel.

Fungsi statis publik

HandleShortcutTunnelAdvertiseMessage(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
void
Fungsi yang terdaftar dengan WeaveMessageLayer untuk memproses iklan tunnel Pintasan dan memperbarui cache.

Jenis publik

TunnelStatusRcvdFunct

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

Pointer fungsi ke pengendali yang ditetapkan oleh lapisan yang lebih tinggi untuk bertindak setelah menerima pesan StatusReport sebagai respons terhadap pesan kontrol Tunnel yang dikirim.

Detail
Parameter
[in] tType
Jenis tunnel, yaitu Utama atau Cadangan.
[in] tunStatus
Referensi ke pesan StatusReport kontrol Tunnel.

Atribut publik

OnTunStatusRcvd

TunnelStatusRcvdFunct OnTunStatusRcvd

mCtrlResponseTimeout

uint16_t mCtrlResponseTimeout

Waktu tunggu(dalam detik) respons untuk mengontrol pesan.

mShortcutTunnelAdvInterval

uint16_t mShortcutTunnelAdvInterval

Interval dalam detik untuk iklan tunnel pintasan berkala.

Fungsi publik

Tutup

WEAVE_ERROR Close(
  void
)

Tutup WeaveTunnelControl dengan menutup konteks pertukaran yang belum terselesaikan dan mereset anggota.

Detail
Hasil
WEAVE_NO_ERROR.

DisableShortcutTunneling

void DisableShortcutTunneling(
  void
)

Nonaktifkan tunneling pintasan untuk mengirim iklan dari Gateway batas atau klien Seluler dan juga memproses iklan dari partner tunnel pintasan.

EnableShortcutTunneling

void EnableShortcutTunneling(
  void
)

Aktifkan tunneling pintasan dengan mengirimkan iklan dari Gateway batas atau klien Seluler dan juga mendengarkan iklan dari pasangan tunnel pintasan.

Inisiasi

WEAVE_ERROR Init(
  WeaveTunnelAgent *tunAgent,
  TunnelStatusRcvdFunct statusRcvd
)

Lakukan inisialisasi WeaveTunnelControl untuk menetapkan anggota yang relevan seperti Agen Weave Tunnel dan callback.

Detail
Parameter
[in] tunAgent
Pointer ke objek WeaveTunnelAgent.
[in] statusRcvd
Pointer ke callback untuk pengendali StatusRcvd.
Hasil
WEAVE_NO_ERROR

IsPeerInShortcutTunnelCache

bool IsPeerInShortcutTunnelCache(
  uint64_t peerId
)

Verifikasi apakah peer ada di cache pintasan tunnel untuk mengirim secara lokal.

Hubungkan kembali

WEAVE_ERROR Reconnect(
  WeaveTunnelConnectionMgr *conMgr
)

Hubungkan kembali dengan node pembanding.

SendBorderRouterAdvertise

WEAVE_ERROR SendBorderRouterAdvertise(
  void
)

Mengirim pesan iklan router perbatasan yang mengiklankan ID fabric-nya.

SendMessageOverTunnelShortcut

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

Kirim pesan melalui pintasan tunnel.

SendMobileClientAdvertise

WEAVE_ERROR SendMobileClientAdvertise(
  void
)

Mengirim pesan iklan seluler yang mengiklankan ID Node-nya.

SendTunnelClose

WEAVE_ERROR SendTunnelClose(
  WeaveTunnelConnectionMgr *conMgr
)

Kirim pesan kontrol Tunnel Close ke node peer dengan serangkaian rute tunnel.

Mengirim pesan kontrol Tunnel Close ke node peer.

Detail
Parameter
[in] conMgr
Pointer ke objek WeaveTunnelConnectionMgr.
Hasil
WEAVE_ERROR WEAVE_NO_ERROR saat berhasil, error jika tidak.

SendTunnelOpen

WEAVE_ERROR SendTunnelOpen(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Kirim pesan kontrol Tunnel Open ke node peer dengan serangkaian rute tunnel.

Detail
Parameter
[in] conMgr
Pointer ke objek WeaveTunnelConnectionMgr.
[in] tunRoutes
Daftar rute awalan yang akan ditambahkan ke tabel rute.
Hasil
WEAVE_ERROR WEAVE_NO_ERROR saat berhasil, error jika tidak.

SendTunnelRouteUpdate

WEAVE_ERROR SendTunnelRouteUpdate(
  WeaveTunnelConnectionMgr *conMgr,
  WeaveTunnelRoute *tunRoute
)

Kirim pesan kontrol Update Rute Tunnel ke node peer dengan serangkaian rute tunnel.

Detail
Parameter
[in] conMgr
Pointer ke objek WeaveTunnelConnectionMgr.
[in] tunRoutes
Daftar rute awalan yang akan ditambahkan ke tabel rute.
Hasil
WEAVE_ERROR WEAVE_NO_ERROR saat berhasil, error jika tidak.

WeaveTunnelControl

 WeaveTunnelControl(
  void
)

Fungsi statis publik

HandleShortcutTunnelAdvertiseMessage

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

Fungsi yang terdaftar dengan WeaveMessageLayer untuk memproses iklan tunnel Pintasan dan memperbarui cache.