nl:: Weave:: Profiles:: WeaveTunnel:: WeaveTunnelAgent
Tóm tắt
Hàm khởi tạo và phá huỷ |
|
---|---|
WeaveTunnelAgent(void)
|
Loại công khai |
|
---|---|
AgentState{
|
enum Trạng thái của Tunnel Agent liên quan đến(các) kết nối của Tunnel Agent với Dịch vụ. |
AgentState
|
typedef Trạng thái của Tunnel Agent liên quan đến(các) kết nối của Tunnel Agent 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 lớp cao hơn thiết lập khi Dịch vụ nhận được yêu cầu Kết nối lại đường hầm. |
OnServiceTunnelStatusNotifyFunct)(WeaveTunnelConnectionMgr::TunnelConnNotifyReasons reason, WEAVE_ERROR err, void *appCtxt)
|
typedefvoid(*
Con trỏ hàm đến trình xử lý do một lớp cao hơn thiết lập để hoạt động theo 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 trỏ đến một 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. |
Các thuộc tính công khai |
|
---|---|
NetworkOnlineCheck
|
|
OnServiceTunReconnectNotify
|
|
OnServiceTunStatusNotify
|
Con trỏ hàm đến trình xử lý do một lớp cao hơn thiết lập để hoạt động theo 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
Lấy thời gian hệ thống tính bằng 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 chạy tác nhân Tunnel.
|
Init(InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode, const char *intfName, uint8_t role, void *appContext)
|
Khởi chạy tác nhân Tunnel.
|
IsPrimaryTunnelEnabled(void) const
|
bool
Kiểm tra xem đường hầm chính đã được bật 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 của dịch vụ hay không.
|
IsTunnelRoutingRestricted(void)
|
bool
Kiểm tra xem đường hầm có bị dịch vụ hạn chế định tuyến hay không.
|
NetworkOnlineCheckResult(TunnelType tunType, bool isOnline)
|
void
Lệnh gọi lại được nền tảng gọi khi có kết quả của trình kiểm tra mạng trực tuyến.
|
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 Tunnel.
|
SetDestination(const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort)
|
void
ĐặtnodeId, IPAddress và cổng cho Tunnel.
|
SetTunnelingDeviceRole(const Role role)
|
void
Đặt vai trò thiết bị tạo đường hầm(BorderGateway, dependentDevice, MobileDevice) cho Đường hầm.
|
Shutdown(void)
|
Tắt Tunnel Agent.
|
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 Tunnel với Dịch vụ.
|
StopServiceTunnel(WEAVE_ERROR err)
|
void
Đóng kết nối Tunnel 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 tạo đường hầm qua đường hầm UDP qua lối tắt giữa cổng biên giới và thiết bị di động, đồng thời chuyển tiếp đến giao diện Tunnel EndPoint sau khi làm giảm 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 Mobile client qua đường hầm lối tắt.
|
Loại công khai
AgentState
AgentState
Trạng thái của Tunnel Agent liên quan đến(các) kết nối của Tunnel Agent 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 để chỉ báo rằng Tunnel Agent được khởi động nhưng chưa thiết lập đường hầm nào. |
kState_NotInitialized
|
Dùng để chỉ báo rằng Tunnel Agent chưa được khởi động. |
kState_PrimaryAndBkupTunModeEstablished
|
Dùng để chỉ báo rằng cả Đường hầm chính và đường hầm Dự phòng đã đượ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 Tunnel Agent liên quan đến(các) kết nối của Tunnel Agent 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 lớp cao hơn thiết lập khi Dịch vụ nhận được yêu cầu Kết nối lại đường hầm.
Thông tin chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Tham số |
|
OnServiceTunnelStatusNotifyFunct
void(* OnServiceTunnelStatusNotifyFunct)(WeaveTunnelConnectionMgr::TunnelConnNotifyReasons reason, WEAVE_ERROR err, void *appCtxt)
Con trỏ hàm đến trình xử lý do một lớp cao hơn thiết lập để hoạt động theo nhiều thông báo liên quan đến đường hầm đến Dịch vụ.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
PlatformNetworkOnlineCheck
void(* PlatformNetworkOnlineCheck)(TunnelType tunType, void *appCtxt)
Con trỏ hàm trỏ đến một 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 | |||||
---|---|---|---|---|---|
Tham số |
|
WeaveTunnelFlags
WeaveTunnelFlags
Các bit cờ Weave Tunnel.
Thuộc tính | |
---|---|
kTunnelFlag_BackupEnabled
|
Đặt 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.
Các 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 một lớp cao hơn thiết lập để hoạt động theo 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.
Vô hiệu hoá Đườ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 )
Lấy thời gian hệ thống tính bằng mili giây.
Nhận 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 cho trạng thái hiện tại của WeaveTunnelAgent.
|
Init
WEAVE_ERROR Init( InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, WeaveAuthMode authMode, WeaveServiceManager *svcMgr, const char *intfName, uint8_t role, void *appContext )
Khởi chạy tác nhân Tunnel.
Thao tác này sẽ tạo đối tượng điểm cuối đường hầm, thiết lập giao diện đường hầm, khởi tạo các biến thành phần, lệnh gọi lại và WeaveTunnelControl.
Init
WEAVE_ERROR Init( InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode, const char *intfName, uint8_t role, void *appContext )
Khởi chạy tác nhân Tunnel.
Thao tác này sẽ tạo đối tượng điểm cuối đường hầm, thiết lập giao diện đường hầm, khởi tạo 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 đã được bật chưa.
Thông tin chi tiết | |
---|---|
Trả về |
true nếu được bật, else 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 của 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 phải tuân theo các hạn chế định tuyến của dịch vụ.
|
IsTunnelRoutingRestricted
bool IsTunnelRoutingRestricted( void )
Kiểm tra xem đường hầm có bị dịch vụ hạn chế định tuyến hay không.
Kiểm tra xem đường hầm 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 hoặc đường hầm dự phòng được thiết lập và một trong hai đường hầm này bị dịch vụ hạn chế định tuyến.
|
NetworkOnlineCheckResult
void NetworkOnlineCheckResult( TunnelType tunType, bool isOnline )
Lệnh gọi lại được nền tảng gọi khi có kết quả của trình kiểm tra mạng trực tuyến.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
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 | |||
---|---|---|---|
Tham số |
|
SetAuthMode
void SetAuthMode( const WeaveAuthMode authMode )
Đặt WeaveAuthMode cho Tunnel.
Thông tin chi tiết | |||
---|---|---|---|
Tham số |
|
SetDestination
void SetDestination( const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort )
ĐặtnodeId, IPAddress và cổng cho Tunnel.
ĐặtNodeId và IPAddress cho đích đến Tunnel.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
Tham số |
|
SetTunnelingDeviceRole
void SetTunnelingDeviceRole( const Role role )
Đặt vai trò thiết bị tạo đường hầm(BorderGateway, dependentDevice, 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 | |||
---|---|---|---|
Tham số |
|
Tắt
WEAVE_ERROR Shutdown( void )
Tắt Tunnel Agent.
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 khi thành công, nếu không sẽ là loại WEAVE_ERROR tương ứng.
|
StartServiceTunnel
WEAVE_ERROR StartServiceTunnel( void )
Khởi động Đường hầm dịch vụ.
Việc này sẽ kích hoạ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 cũng đặt tuyến vải tới giao diện đường hầm.
Thông tin chi tiết | |
---|---|
Trả về |
WEAVE_NO_ERROR khi thành công, nếu không sẽ là 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ụ.
Việc này sẽ kích hoạ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 Tunnel với Dịch vụ.
StopServiceTunnel
void StopServiceTunnel( WEAVE_ERROR err )
Đóng kết nối Tunnel với Dịch vụ.
Thông tin chi tiết | |||
---|---|---|---|
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 tạo đường hầm qua đường hầm UDP qua lối tắt giữa cổng biên giới và thiết bị di động, đồng thời chuyển tiếp đến giao diện Tunnel EndPoint sau khi làm giảm 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 tạo đường hầm từ kết nối TCP của dịch vụ và chuyển tiếp đến giao diện Tunnel EndPoint sau khi làm giảm gói IPv6 thô từ bên trong tiêu đề đường hầm.
Thông tin chi tiết | |||||||
---|---|---|---|---|---|---|---|
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 Mobile client 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 Mobile qua đường hầm cục bộ.
Nếu chưa thiết lập kết nối Dịch vụ, thông báo sẽ được đưa vào hàng đợi cho đến khi thiết lập 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 bên cạnh nexthop được tham chiếu.
Nếu chưa thiết lập kết nối Dịch vụ, thông báo sẽ được đưa vào hàng đợi cho đến khi thiết lập 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 bên cạnh nexthop được tham chiếu.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Tham số |
|