nl:: Weave:: Profiles:: WeaveTunnel:: WeaveTunnelAgent
Tóm tắt
Hàm khởi tạo và hàm phá |
|
---|---|
WeaveTunnelAgent(void)
|
Loại công khai |
|
---|---|
AgentState{
|
enum Trạng thái của Tác nhân đường hầm liên quan đến(các) kết nối với Dịch vụ. |
AgentState
|
typedef Trạng thái của Tác nhân đường hầm liên quan đến(các) kết nối với Dịch vụ. |
OnServiceTunnelReconnectNotifyFunct)(TunnelType tunType, const char *reconnectHost, const uint16_t reconnectPort, void *appCtxt)
|
typedefvoid(*
Con trỏ hàm đến trình xử lý do một lớp cao hơn đặt khi nhận được Kết nối lại đường hầm từ Dịch vụ. |
OnServiceTunnelStatusNotifyFunct)(WeaveTunnelConnectionMgr::TunnelConnNotifyReasons reason, WEAVE_ERROR err, void *appCtxt)
|
typedefvoid(*
Con trỏ hàm đến trình xử lý do lớp cao hơn đặt để hoạt động dựa trên nhiều thông báo liên quan đến đường hầm đến Dịch vụ. |
PlatformNetworkOnlineCheck)(TunnelType tunType, void *appCtxt)
|
typedefvoid(*
Con trỏ hàm đến trình xử lý do ứng dụng cung cấp để kiểm tra trực tuyến cấp độ mạng. |
WeaveTunnelFlags{
|
enum Các bit cờ Weave Tunnel. |
WeaveTunnelFlags
|
typedef Các bit cờ Weave Tunnel. |
Thuộc tính công khai |
|
---|---|
NetworkOnlineCheck
|
|
OnServiceTunReconnectNotify
|
|
OnServiceTunStatusNotify
|
Con trỏ hàm đến trình xử lý do lớp cao hơn đặt để hoạt động dựa trên nhiều thông báo liên quan đến đường hầm đến Dịch vụ.
|
mServiceMgr
|
WeaveServiceManager *
Con trỏ Trình quản lý dịch vụ dùng để tra cứu và kết nối với Dịch vụ.
|
Hàm công khai |
|
---|---|
DisablePrimaryTunnel(void)
|
void
Tắt Đường hầm chính.
|
EnablePrimaryTunnel(void)
|
void
Bật đường hầm chính.
|
GetAgentStateName(const AgentState state)
|
const char *
Lấy tên WeaveTunnelAgentState.
|
GetTimeMsec(void)
|
uint64_t
Xem thời gian hệ thống theo mili giây.
|
GetWeaveTunnelAgentState(void)
|
Lấy trạng thái TunnelAgent.
|
Init(InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, WeaveAuthMode authMode, WeaveServiceManager *svcMgr, const char *intfName, uint8_t role, void *appContext)
|
Khởi động tác nhân Tunnel (Đường hầm).
|
Init(InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode, const char *intfName, uint8_t role, void *appContext)
|
Khởi động tác nhân Tunnel (Đường hầm).
|
IsPrimaryTunnelEnabled(void) const
|
bool
Kiểm tra xem đường hầm chính đã bật hay chưa.
|
IsPrimaryTunnelRoutingRestricted(void)
|
bool
Kiểm tra xem đường hầm chính có phải tuân theo các hạn chế định tuyến do dịch vụ hay không.
|
IsTunnelRoutingRestricted(void)
|
bool
Kiểm tra xem đường hầm có phải tuân theo các hạn chế định tuyến do dịch vụ hay không.
|
NetworkOnlineCheckResult(TunnelType tunType, bool isOnline)
|
void
Nền tảng sẽ gọi lệnh gọi lại khi có kết quả của công cụ kiểm tra trực tuyến mạng.
|
ResetPrimaryReconnectBackoff(bool reconnectImmediately)
|
Đặt lại thời gian Kết nối lại cho đường hầm chính.
|
SetAuthMode(const WeaveAuthMode authMode)
|
void
Đặt WeaveAuthMode cho Đường hầm.
|
SetDestination(const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort)
|
void
Đặt mã nút đích, IPAddress và cổng cho Đường hầm.
|
SetTunnelingDeviceRole(const Role role)
|
void
Đặt vai trò thiết bị Tạo đường hầm(BorderGateway, độc lậpDevice, MobileDevice) cho đường hầm.
|
Shutdown(void)
|
Hãy đóng cửa sổ Tác nhân đường hầm.
|
StartServiceTunnel(void)
|
Khởi động Đường hầm dịch vụ.
|
StartServiceTunnel(uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode)
|
Khởi động Đường hầm dịch vụ.
|
StopServiceTunnel(void)
|
void
Đóng kết nối Đường hầm với Dịch vụ.
|
StopServiceTunnel(WEAVE_ERROR err)
|
void
Đóng kết nối Đường hầm với Dịch vụ.
|
Hàm tĩnh công khai |
|
---|---|
RecvdFromShortcutUDPTunnel(WeaveMessageLayer *msgLayer, PacketBuffer *message)
|
void
Trình xử lý để nhận các gói IPv6 được phân luồng qua đường hầm UDP qua lối tắt giữa cổng biên và thiết bị di động, đồng thời chuyển tiếp đến giao diện Tunnel EndPoint sau khi phân giải gói IPv6 thô từ bên trong tiêu đề đường hầm.
|
RecvdFromTunnelEndPoint(TunEndPoint *tunEP, PacketBuffer *message)
|
void
Trình xử lý để nhận các gói IPv6 từ giao diện Tunnel EndPoint và chuyển tiếp, tới Dịch vụ thông qua kết nối Service TCP sau khi đóng gói gói IPv6 bên trong tiêu đề đường hầm hoặc tới Ứng dụng di động qua đường hầm lối tắt.
|
Loại công khai
AgentState
AgentState
Trạng thái của Tác nhân đường hầm liên quan đến(các) kết nối với Dịch vụ.
Thuộc tính | |
---|---|
kState_BkupOnlyTunModeEstablished
|
Dùng để cho biết rằng đường hầm Sao lưu đến Dịch vụ đã được thiết lập. |
kState_Initialized_NoTunnel
|
Dùng để cho biết Tác nhân đường hầm đã được khởi động nhưng chưa có đường hầm nào được thiết lập. |
kState_NotInitialized
|
Dùng để cho biết rằng Tunnel Agent chưa được khởi động. |
kState_PrimaryAndBkupTunModeEstablished
|
Dùng để cho biết cả đường hầm Chính và đường hầm Sao lưu đã được thiết lập. |
kState_PrimaryTunModeEstablished
|
Dùng để cho biết rằng Đường hầm chính đến Dịch vụ đã được thiết lập. |
AgentState
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelAgent::AgentState AgentState
Trạng thái của Tác nhân đường hầm liên quan đến(các) kết nối với Dịch vụ.
OnServiceTunnelReconnectNotifyFunct
void(* OnServiceTunnelReconnectNotifyFunct)(TunnelType tunType, const char *reconnectHost, const uint16_t reconnectPort, void *appCtxt)
Con trỏ hàm đến trình xử lý do một lớp cao hơn đặt khi nhận được Kết nối lại đường hầm từ Dịch vụ.
Thông tin chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Các tham số |
|
OnServiceTunnelStatusNotifyFunct
void(* OnServiceTunnelStatusNotifyFunct)(WeaveTunnelConnectionMgr::TunnelConnNotifyReasons reason, WEAVE_ERROR err, void *appCtxt)
Con trỏ hàm đến trình xử lý do lớp cao hơn đặt để hoạt động dựa trên nhiều thông báo liên quan đến đường hầm đến Dịch vụ.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
PlatformNetworkOnlineCheck
void(* PlatformNetworkOnlineCheck)(TunnelType tunType, void *appCtxt)
Con trỏ hàm đến trình xử lý do ứng dụng cung cấp để kiểm tra trực tuyến cấp độ mạng.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
WeaveTunnelFlags
WeaveTunnelFlags
Các bit cờ Weave Tunnel.
Thuộc tính | |
---|---|
kTunnelFlag_BackupEnabled
|
Thiết lập thời điểm đường hầm sao lưu được bật. |
kTunnelFlag_BackupRestricted
|
Thiết lập khi đường hầm sao lưu bị hạn chế định tuyến. |
kTunnelFlag_PrimaryEnabled
|
Đặt thời điểm đường hầm chính được bật. |
kTunnelFlag_PrimaryRestricted
|
Thiết lập khi đường hầm chính bị hạn chế định tuyến. |
WeaveTunnelFlags
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelAgent::WeaveTunnelFlags WeaveTunnelFlags
Các bit cờ Weave Tunnel.
Thuộc tính công khai
NetworkOnlineCheck
PlatformNetworkOnlineCheck NetworkOnlineCheck
OnServiceTunReconnectNotify
OnServiceTunnelReconnectNotifyFunct OnServiceTunReconnectNotify
OnServiceTunStatusNotify
OnServiceTunnelStatusNotifyFunct OnServiceTunStatusNotify
Con trỏ hàm đến trình xử lý do lớp cao hơn đặt để hoạt động dựa trên nhiều thông báo liên quan đến đường hầm đến Dịch vụ.
mServiceMgr
WeaveServiceManager * mServiceMgr
Con trỏ Trình quản lý dịch vụ dùng để tra cứu và kết nối với Dịch vụ.
Hàm công khai
DisablePrimaryTunnel
void DisablePrimaryTunnel( void )
Tắt Đường hầm chính.
Tắt Đường hầm chính.
EnablePrimaryTunnel
void EnablePrimaryTunnel( void )
Bật đường hầm chính.
Bật Đường hầm chính.
GetAgentStateName
const char * GetAgentStateName( const AgentState state )
Lấy tên WeaveTunnelAgentState.
GetTimeMsec
uint64_t GetTimeMsec( void )
Xem thời gian hệ thống theo mili giây.
Lấy thời gian hệ thống hoặc thời gian đơn điệu tính bằng mili giây nếu không có thời gian hệ thống.
GetWeaveTunnelAgentState
AgentState GetWeaveTunnelAgentState( void )
Lấy trạng thái TunnelAgent.
Thông tin chi tiết | |
---|---|
Trả về |
AgentState trạng thái hiện tại của WeaveTunnelAgent.
|
Bắt đầu
WEAVE_ERROR Init( InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, WeaveAuthMode authMode, WeaveServiceManager *svcMgr, const char *intfName, uint8_t role, void *appContext )
Khởi động tác nhân Tunnel (Đường hầm).
Thao tác này sẽ tạo đối tượng điểm cuối của Đường hầm, thiết lập giao diện đường hầm, khởi chạy các biến thành phần, lệnh gọi lại và WeaveTunnelControl.
Bắt đầu
WEAVE_ERROR Init( InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode, const char *intfName, uint8_t role, void *appContext )
Khởi động tác nhân Tunnel (Đường hầm).
Thao tác này sẽ tạo đối tượng điểm cuối của Đường hầm, thiết lập giao diện đường hầm, khởi chạy các biến thành phần, lệnh gọi lại và WeaveTunnelControl.
IsPrimaryTunnelEnabled
bool IsPrimaryTunnelEnabled( void ) const
Kiểm tra xem đường hầm chính đã bật hay chưa.
Thông tin chi tiết | |
---|---|
Trả về |
true nếu giá trị này được bật, nếu không thì là false.
|
IsPrimaryTunnelRoutingRestricted
bool IsPrimaryTunnelRoutingRestricted( void )
Kiểm tra xem đường hầm chính có phải tuân theo các hạn chế định tuyến do dịch vụ hay không.
Kiểm tra xem đường hầm chính có phải tuân theo các hạn chế định tuyến hay không.
Thông tin chi tiết | |
---|---|
Trả về |
true nếu đường hầm chính được thiết lập nhưng bị dịch vụ hạn chế định tuyến.
|
IsTunnelRoutingRestricted
bool IsTunnelRoutingRestricted( void )
Kiểm tra xem đường hầm có phải tuân theo các hạn chế định tuyến do dịch vụ hay không.
Kiểm tra xem đường hầm có tuân theo các hạn chế định tuyến hay không.
Thông tin chi tiết | |
---|---|
Trả về |
true nếu đường hầm chính hoặc dự phòng được thiết lập và cả hai đều bị dịch vụ hạn chế định tuyến.
|
NetworkOnlineCheckResult
void NetworkOnlineCheckResult( TunnelType tunType, bool isOnline )
Nền tảng sẽ gọi lệnh gọi lại khi có kết quả của công cụ kiểm tra trực tuyến mạng.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
ResetPrimaryReconnectBackoff
WEAVE_ERROR ResetPrimaryReconnectBackoff( bool reconnectImmediately )
Đặt lại thời gian Kết nối lại cho đường hầm chính.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
SetAuthMode
void SetAuthMode( const WeaveAuthMode authMode )
Đặt WeaveAuthMode cho Đường hầm.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
SetDestination
void SetDestination( const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort )
Đặt mã nút đích, IPAddress và cổng cho Đường hầm.
Đặt buttonId và IPAddress cho đường hầm.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
SetTunnelingDeviceRole
void SetTunnelingDeviceRole( const Role role )
Đặt vai trò thiết bị Tạo đường hầm(BorderGateway, độc lậpDevice, MobileDevice) cho đường hầm.
Đặt vai trò thiết bị Tạo đường hầm(BorderGateway và Độc lập) cho Đường hầm.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
Tắt
WEAVE_ERROR Shutdown( void )
Hãy đóng cửa sổ Tác nhân đường hầm.
Thao tác này sẽ chia nhỏ kết nối với Dịch vụ và đóng giao diện TunEndPoint sau khi xoá các địa chỉ và tuyến đường được liên kết với giao diện đường hầm.
Thao tác này sẽ chia nhỏ kết nối với Dịch vụ và đóng giao diện TunEndPoint sau khi xoá các địa chỉ và tuyến đường được liên kết với giao diện đường hầm.
Thông tin chi tiết | |
---|---|
Trả về |
WEAVE_NO_ERROR nếu thành công, nếu không, hãy dùng loại WEAVE_ERROR tương ứng.
|
StartServiceTunnel
WEAVE_ERROR StartServiceTunnel( void )
Khởi động Đường hầm dịch vụ.
Thao tác này sẽ bật đường hầm và cố gắng thiết lập kết nối với Dịch vụ.
Thao tác này sẽ cố gắng thiết lập kết nối với Dịch vụ, đồng thời đặt tuyến vải đến giao diện đường hầm.
Thông tin chi tiết | |
---|---|
Trả về |
WEAVE_NO_ERROR nếu thành công, nếu không, hãy dùng loại WEAVE_ERROR tương ứng.
|
StartServiceTunnel
WEAVE_ERROR StartServiceTunnel( uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode )
Khởi động Đường hầm dịch vụ.
Thao tác này sẽ bật đường hầm và cố gắng thiết lập kết nối với Dịch vụ.
StopServiceTunnel
void StopServiceTunnel( void )
Đóng kết nối Đường hầm với Dịch vụ.
StopServiceTunnel
void StopServiceTunnel( WEAVE_ERROR err )
Đóng kết nối Đường hầm với Dịch vụ.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
WeaveTunnelAgent
WeaveTunnelAgent( void )
Hàm tĩnh công khai
RecvdFromShortcutUDPTunnel
void RecvdFromShortcutUDPTunnel( WeaveMessageLayer *msgLayer, PacketBuffer *message )
Trình xử lý để nhận các gói IPv6 được phân luồng qua đường hầm UDP qua lối tắt giữa cổng biên và thiết bị di động, đồng thời chuyển tiếp đến giao diện Tunnel EndPoint sau khi phân giải gói IPv6 thô từ bên trong tiêu đề đường hầm.
Trình xử lý để nhận các gói IPv6 được phân luồng từ kết nối Service TCP và chuyển tiếp tới giao diện Tunnel EndPoint sau khi phân giải gói IPv6 thô từ bên trong tiêu đề đường hầm.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Các tham số |
|
RecvdFromTunnelEndPoint
void RecvdFromTunnelEndPoint( TunEndPoint *tunEP, PacketBuffer *message )
Trình xử lý để nhận các gói IPv6 từ giao diện Tunnel EndPoint và chuyển tiếp, tới Dịch vụ thông qua kết nối Service TCP sau khi đóng gói gói IPv6 bên trong tiêu đề đường hầm hoặc tới Ứng dụng di động qua đường hầm lối tắt.
Trình xử lý để nhận các gói IPv6 từ giao diện Tunnel EndPoint và chuyển tiếp, tới Dịch vụ thông qua kết nối Service TCP sau khi đóng gói gói IPv6 bên trong tiêu đề đường hầm hoặc tới Ứng dụng di động qua đường hầm cục bộ.
Nếu chưa kết nối với dịch vụ, thông báo sẽ được xếp vào hàng đợi cho đến khi thiết lập xong kết nối. Để tạo đường hầm đến thiết bị khách dành cho thiết bị di động, bảng nexthop lân cận được tham chiếu.
Nếu chưa kết nối với dịch vụ, thông báo sẽ được xếp vào hàng đợi cho đến khi thiết lập xong kết nối. Để tạo đường hầm đến thiết bị khách dành cho thiết bị di động, bảng nexthop lân cận được tham chiếu.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|