nl:: Weave:: Profiles:: WeaveTunnel:: WeaveTunnelAgent
สรุป
ผู้ผลิตและผู้ทำลาย |
|
---|---|
WeaveTunnelAgent(void)
|
ประเภทสาธารณะ |
|
---|---|
AgentState{
|
enum สถานะของ Tunnel Agent ที่เกี่ยวข้องกับการเชื่อมต่อกับบริการ |
AgentState
|
typedef สถานะของ Tunnel Agent ที่เกี่ยวข้องกับการเชื่อมต่อกับบริการ |
OnServiceTunnelReconnectNotifyFunct)(TunnelType tunType, const char *reconnectHost, const uint16_t reconnectPort, void *appCtxt)
|
typedefvoid(*
ตัวชี้ฟังก์ชันสำหรับเครื่องจัดการที่ตั้งค่าไว้โดยเลเยอร์ที่สูงกว่าเมื่อได้รับการเชื่อมต่อ Tunnel อีกครั้งจากบริการ |
OnServiceTunnelStatusNotifyFunct)(WeaveTunnelConnectionMgr::TunnelConnNotifyReasons reason, WEAVE_ERROR err, void *appCtxt)
|
typedefvoid(*
ตัวชี้ฟังก์ชันสำหรับเครื่องจัดการที่ตั้งค่าไว้โดยเลเยอร์ที่สูงกว่าเพื่อดำเนินการกับการแจ้งเตือนต่างๆ ที่เกี่ยวข้องกับอุโมงค์ไปยังบริการ |
PlatformNetworkOnlineCheck)(TunnelType tunType, void *appCtxt)
|
typedefvoid(*
ตัวชี้ฟังก์ชันไปยังเครื่องจัดการที่แอปพลิเคชันมีให้สำหรับดำเนินการตรวจสอบระดับเครือข่ายทางออนไลน์ |
WeaveTunnelFlags{
|
enum บิตธงของอุโมงค์ Weave Tunnel |
WeaveTunnelFlags
|
typedef บิตธงของอุโมงค์ Weave Tunnel |
แอตทริบิวต์สาธารณะ |
|
---|---|
NetworkOnlineCheck
|
|
OnServiceTunReconnectNotify
|
|
OnServiceTunStatusNotify
|
ตัวชี้ฟังก์ชันสำหรับเครื่องจัดการที่ตั้งค่าไว้โดยเลเยอร์ที่สูงกว่าเพื่อดำเนินการกับการแจ้งเตือนต่างๆ ที่เกี่ยวข้องกับอุโมงค์ไปยังบริการ
|
mServiceMgr
|
WeaveServiceManager *
เคอร์เซอร์ของ Service Manager ที่จะใช้ค้นหาและเชื่อมต่อกับบริการ
|
ฟังก์ชันสาธารณะ |
|
---|---|
DisablePrimaryTunnel(void)
|
void
ปิดใช้อุโมงค์ข้อมูลหลัก
|
EnablePrimaryTunnel(void)
|
void
เปิดใช้อุโมงค์ข้อมูลหลัก
|
GetAgentStateName(const AgentState state)
|
const char *
รับชื่อ WeaveTunnelAgentState
|
GetTimeMsec(void)
|
uint64_t
ดูเวลาของระบบเป็นมิลลิวินาที
|
GetWeaveTunnelAgentState(void)
|
รับสถานะ TunnelAgent
|
Init(InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, WeaveAuthMode authMode, WeaveServiceManager *svcMgr, const char *intfName, uint8_t role, void *appContext)
|
เริ่มต้น Agent ของ Tunnel
|
Init(InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode, const char *intfName, uint8_t role, void *appContext)
|
เริ่มต้น Agent ของ Tunnel
|
IsPrimaryTunnelEnabled(void) const
|
bool
ตรวจสอบว่าเปิดใช้อุโมงค์ข้อมูลหลักอยู่หรือไม่
|
IsPrimaryTunnelRoutingRestricted(void)
|
bool
ตรวจสอบว่าอุโมงค์ข้อมูลหลักอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางโดยบริการหรือไม่
|
IsTunnelRoutingRestricted(void)
|
bool
ตรวจสอบว่าอุโมงค์ข้อมูลอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางโดยบริการหรือไม่
|
NetworkOnlineCheckResult(TunnelType tunType, bool isOnline)
|
void
แพลตฟอร์มเรียกใช้โค้ดเรียกกลับเมื่อมีผลลัพธ์ของเครื่องมือตรวจสอบออนไลน์ของเครือข่าย
|
ResetPrimaryReconnectBackoff(bool reconnectImmediately)
|
รีเซ็ตเวลาเชื่อมต่ออีกครั้งสำหรับอุโมงค์ข้อมูลหลัก
|
SetAuthMode(const WeaveAuthMode authMode)
|
void
ตั้งค่า WeaveAuthMode สำหรับอุโมงค์ข้อมูล
|
SetDestination(const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort)
|
void
ตั้งค่า NodeId, IPAddress และพอร์ตปลายทางสำหรับ Tunnel
|
SetTunnelingDeviceRole(const Role role)
|
void
กำหนดบทบาทของอุปกรณ์ Tunnel(BorderGateway, StandaloneDevice, MobileDevice) สำหรับอุโมงค์ข้อมูล
|
Shutdown(void)
|
ปิด Tunnel Agent
|
StartServiceTunnel(void)
|
เริ่มต้น Service Tunnel
|
StartServiceTunnel(uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode)
|
เริ่มต้น Service Tunnel
|
StopServiceTunnel(void)
|
void
ปิดการเชื่อมต่อ Tunnel กับบริการ
|
StopServiceTunnel(WEAVE_ERROR err)
|
void
ปิดการเชื่อมต่อ Tunnel กับบริการ
|
ฟังก์ชันแบบคงที่แบบสาธารณะ |
|
---|---|
RecvdFromShortcutUDPTunnel(WeaveMessageLayer *msgLayer, PacketBuffer *message)
|
void
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 อุโมงค์ข้อมูลผ่านอุโมงค์ UDP ทางลัดระหว่างเกตเวย์ชายแดนกับอุปกรณ์เคลื่อนที่ และส่งต่อไปยังอินเทอร์เฟซ Tunnel EndPoint หลังจากถอดแพ็กเก็ต IPv6 ดิบออกแล้วจากภายในส่วนหัวของอุโมงค์ข้อมูล
|
RecvdFromTunnelEndPoint(TunEndPoint *tunEP, PacketBuffer *message)
|
void
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 จากอินเทอร์เฟซ Tunnel EndPoint และส่งต่อไปที่บริการผ่านการเชื่อมต่อ Service TCP หลังจากห่อหุ้มแพ็กเก็ต IPv6 ภายในส่วนหัวของอุโมงค์ข้อมูลหรือไปยังไคลเอ็นต์อุปกรณ์เคลื่อนที่ผ่านอุโมงค์ข้อมูลทางลัด
|
ประเภทสาธารณะ
AgentState
AgentState
สถานะของ Tunnel Agent ที่เกี่ยวข้องกับการเชื่อมต่อกับบริการ
พร็อพเพอร์ตี้ | |
---|---|
kState_BkupOnlyTunModeEstablished
|
ใช้เพื่อระบุว่ามีการสร้างอุโมงค์ข้อมูลสำรองไปยังบริการแล้ว |
kState_Initialized_NoTunnel
|
ใช้เพื่อระบุว่า Tunnel Agent ได้เริ่มต้นแล้ว แต่ยังไม่มีการสร้างอุโมงค์ข้อมูล |
kState_NotInitialized
|
ใช้เพื่อระบุว่า Tunnel Agent ยังไม่เริ่มต้น |
kState_PrimaryAndBkupTunModeEstablished
|
ใช้เพื่อระบุว่ามีการสร้างทั้งอุโมงค์ข้อมูลหลักและอุโมงค์สำรองแล้ว |
kState_PrimaryTunModeEstablished
|
ใช้เพื่อระบุว่ามีการสร้างอุโมงค์ข้อมูลหลักไปยังบริการแล้ว |
AgentState
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelAgent::AgentState AgentState
สถานะของ Tunnel Agent ที่เกี่ยวข้องกับการเชื่อมต่อกับบริการ
OnServiceTunnelReconnectNotifyFunct
void(* OnServiceTunnelReconnectNotifyFunct)(TunnelType tunType, const char *reconnectHost, const uint16_t reconnectPort, void *appCtxt)
ตัวชี้ฟังก์ชันสำหรับเครื่องจัดการที่ตั้งค่าไว้โดยเลเยอร์ที่สูงกว่าเมื่อได้รับการเชื่อมต่อ Tunnel อีกครั้งจากบริการ
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
OnServiceTunnelStatusNotifyFunct
void(* OnServiceTunnelStatusNotifyFunct)(WeaveTunnelConnectionMgr::TunnelConnNotifyReasons reason, WEAVE_ERROR err, void *appCtxt)
ตัวชี้ฟังก์ชันสำหรับเครื่องจัดการที่ตั้งค่าไว้โดยเลเยอร์ที่สูงกว่าเพื่อดำเนินการกับการแจ้งเตือนต่างๆ ที่เกี่ยวข้องกับอุโมงค์ไปยังบริการ
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
PlatformNetworkOnlineCheck
void(* PlatformNetworkOnlineCheck)(TunnelType tunType, void *appCtxt)
ตัวชี้ฟังก์ชันไปยังเครื่องจัดการที่แอปพลิเคชันมีให้สำหรับดำเนินการตรวจสอบระดับเครือข่ายทางออนไลน์
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
WeaveTunnelFlags
WeaveTunnelFlags
บิตธงของอุโมงค์ Weave Tunnel
พร็อพเพอร์ตี้ | |
---|---|
kTunnelFlag_BackupEnabled
|
ตั้งค่าเมื่อเปิดใช้อุโมงค์ข้อมูลสํารอง |
kTunnelFlag_BackupRestricted
|
กำหนดเวลาที่อุโมงค์ข้อมูลสำรองมีการจำกัดการกำหนดเส้นทาง |
kTunnelFlag_PrimaryEnabled
|
ตั้งค่าเมื่อเปิดใช้อุโมงค์ข้อมูลหลัก |
kTunnelFlag_PrimaryRestricted
|
ตั้งค่าเมื่ออุโมงค์ข้อมูลหลักมีการจำกัดการกำหนดเส้นทาง |
WeaveTunnelFlags
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelAgent::WeaveTunnelFlags WeaveTunnelFlags
บิตธงของอุโมงค์ Weave Tunnel
แอตทริบิวต์สาธารณะ
NetworkOnlineCheck
PlatformNetworkOnlineCheck NetworkOnlineCheck
OnServiceTunReconnectNotify
OnServiceTunnelReconnectNotifyFunct OnServiceTunReconnectNotify
OnServiceTunStatusNotify
OnServiceTunnelStatusNotifyFunct OnServiceTunStatusNotify
ตัวชี้ฟังก์ชันสำหรับเครื่องจัดการที่ตั้งค่าไว้โดยเลเยอร์ที่สูงกว่าเพื่อดำเนินการกับการแจ้งเตือนต่างๆ ที่เกี่ยวข้องกับอุโมงค์ไปยังบริการ
mServiceMgr
WeaveServiceManager * mServiceMgr
เคอร์เซอร์ของ Service Manager ที่จะใช้ค้นหาและเชื่อมต่อกับบริการ
ฟังก์ชันสาธารณะ
DisablePrimaryTunnel
void DisablePrimaryTunnel( void )
ปิดใช้อุโมงค์ข้อมูลหลัก
ปิดใช้อุโมงค์ข้อมูลหลัก
EnablePrimaryTunnel
void EnablePrimaryTunnel( void )
เปิดใช้อุโมงค์ข้อมูลหลัก
เปิดใช้อุโมงค์ข้อมูลหลัก
GetAgentStateName
const char * GetAgentStateName( const AgentState state )
รับชื่อ WeaveTunnelAgentState
GetTimeMsec
uint64_t GetTimeMsec( void )
ดูเวลาของระบบเป็นมิลลิวินาที
ดูเวลาของระบบหรือเวลาแบบโมโนโซนเป็นมิลลิวินาที หากเวลาของระบบไม่พร้อมใช้งาน
GetWeaveTunnelAgentState
AgentState GetWeaveTunnelAgentState( void )
เริ่มต้น
WEAVE_ERROR Init( InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, WeaveAuthMode authMode, WeaveServiceManager *svcMgr, const char *intfName, uint8_t role, void *appContext )
เริ่มต้น Agent ของ Tunnel
ซึ่งจะเป็นการสร้างออบเจ็กต์ปลายทางของ Tunnel, ตั้งค่าอินเทอร์เฟซทันเนล, เริ่มต้นตัวแปรสมาชิก, โค้ดเรียกกลับ และ WeaveTunnelControl
เริ่มต้น
WEAVE_ERROR Init( InetLayer *inet, WeaveExchangeManager *exchMgr, uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode, const char *intfName, uint8_t role, void *appContext )
เริ่มต้น Agent ของ Tunnel
ซึ่งจะเป็นการสร้างออบเจ็กต์ปลายทางของ Tunnel, ตั้งค่าอินเทอร์เฟซทันเนล, เริ่มต้นตัวแปรสมาชิก, โค้ดเรียกกลับ และ WeaveTunnelControl
IsPrimaryTunnelEnabled
bool IsPrimaryTunnelEnabled( void ) const
ตรวจสอบว่าเปิดใช้อุโมงค์ข้อมูลหลักอยู่หรือไม่
รายละเอียด | |
---|---|
การส่งคืน |
true หากเปิดใช้อยู่ หากเปิดใช้จะทำให้เป็นเท็จ
|
IsPrimaryTunnelRoutingRestricted
bool IsPrimaryTunnelRoutingRestricted( void )
ตรวจสอบว่าอุโมงค์ข้อมูลหลักอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางโดยบริการหรือไม่
ตรวจสอบว่าอุโมงค์ข้อมูลหลักอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางหรือไม่
รายละเอียด | |
---|---|
การส่งคืน |
จริง หากมีการสร้างอุโมงค์ข้อมูลหลักแต่อยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางโดยบริการ
|
IsTunnelRoutingRestricted
bool IsTunnelRoutingRestricted( void )
ตรวจสอบว่าอุโมงค์ข้อมูลอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางโดยบริการหรือไม่
ตรวจสอบว่าอุโมงค์ดังกล่าวอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางหรือไม่
รายละเอียด | |
---|---|
การส่งคืน |
จริง หากมีการสร้างอุโมงค์ข้อมูลหลักหรืออุโมงค์สำรอง และบริการจะอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทาง
|
NetworkOnlineCheckResult
void NetworkOnlineCheckResult( TunnelType tunType, bool isOnline )
แพลตฟอร์มเรียกใช้โค้ดเรียกกลับเมื่อมีผลลัพธ์ของเครื่องมือตรวจสอบออนไลน์ของเครือข่าย
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
ResetPrimaryReconnectBackoff
WEAVE_ERROR ResetPrimaryReconnectBackoff( bool reconnectImmediately )
รีเซ็ตเวลาเชื่อมต่ออีกครั้งสำหรับอุโมงค์ข้อมูลหลัก
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
SetAuthMode
void SetAuthMode( const WeaveAuthMode authMode )
ตั้งค่า WeaveAuthMode สำหรับอุโมงค์ข้อมูล
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
SetDestination
void SetDestination( const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort )
ตั้งค่า NodeId, IPAddress และพอร์ตปลายทางสำหรับ Tunnel
ตั้งค่า NodeId และ IPAddress ปลายทางสำหรับ Tunnel
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
SetTunnelingDeviceRole
void SetTunnelingDeviceRole( const Role role )
กำหนดบทบาทของอุปกรณ์ Tunnel(BorderGateway, StandaloneDevice, MobileDevice) สำหรับอุโมงค์ข้อมูล
กำหนดบทบาทอุปกรณ์ Tunnel(BorderGateway เทียบกับแบบสแตนด์อโลน) สำหรับ Tunnel
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
ปิดการทำงาน
WEAVE_ERROR Shutdown( void )
ปิด Tunnel Agent
ซึ่งจะตัดการเชื่อมต่อกับบริการและปิดอินเทอร์เฟซ TunEndPoint หลังลบที่อยู่และเส้นทางที่เชื่อมโยงกับอินเทอร์เฟซอุโมงค์ข้อมูล
ซึ่งจะตัดการเชื่อมต่อกับบริการและปิดอินเทอร์เฟซ TunEndPoint หลังลบที่อยู่และเส้นทางที่เชื่อมโยงกับอินเทอร์เฟซอุโมงค์ข้อมูล
รายละเอียด | |
---|---|
การส่งคืน |
WEAVE_NO_ERROR เกี่ยวกับความสำเร็จ หรือประเภท WEAVE_ERROR ที่สอดคล้องกัน
|
StartServiceTunnel
WEAVE_ERROR StartServiceTunnel( void )
เริ่มต้น Service Tunnel
การดำเนินการนี้จะเปิดใช้อุโมงค์ข้อมูลและพยายามสร้างการเชื่อมต่อกับบริการ
การดำเนินการนี้จะพยายามสร้างการเชื่อมต่อกับบริการและกำหนดเส้นทาง Fabric ไปยังอินเทอร์เฟซอุโมงค์ข้อมูลด้วย
รายละเอียด | |
---|---|
การส่งคืน |
WEAVE_NO_ERROR เกี่ยวกับความสำเร็จ หรือประเภท WEAVE_ERROR ที่สอดคล้องกัน
|
StartServiceTunnel
WEAVE_ERROR StartServiceTunnel( uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode )
เริ่มต้น Service Tunnel
การดำเนินการนี้จะเปิดใช้อุโมงค์ข้อมูลและพยายามสร้างการเชื่อมต่อกับบริการ
StopServiceTunnel
void StopServiceTunnel( void )
ปิดการเชื่อมต่อ Tunnel กับบริการ
StopServiceTunnel
void StopServiceTunnel( WEAVE_ERROR err )
ปิดการเชื่อมต่อ Tunnel กับบริการ
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
WeaveTunnelAgent
WeaveTunnelAgent( void )
ฟังก์ชันแบบคงที่แบบสาธารณะ
RecvdFromShortcutUDPTunnel
void RecvdFromShortcutUDPTunnel( WeaveMessageLayer *msgLayer, PacketBuffer *message )
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 อุโมงค์ข้อมูลผ่านอุโมงค์ UDP ทางลัดระหว่างเกตเวย์ชายแดนกับอุปกรณ์เคลื่อนที่ และส่งต่อไปยังอินเทอร์เฟซ Tunnel EndPoint หลังจากถอดแพ็กเก็ต IPv6 ดิบออกแล้วจากภายในส่วนหัวของอุโมงค์ข้อมูล
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 แบบ Tunnel จากการเชื่อมต่อ Service TCP และส่งต่อไปยังอินเทอร์เฟซ Tunnel EndPoint หลังจากถอดแพ็กเก็ต IPv6 ดิบออกแล้วจากภายในส่วนหัวของอุโมงค์ข้อมูล
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
RecvdFromTunnelEndPoint
void RecvdFromTunnelEndPoint( TunEndPoint *tunEP, PacketBuffer *message )
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 จากอินเทอร์เฟซ Tunnel EndPoint และส่งต่อไปที่บริการผ่านการเชื่อมต่อ Service TCP หลังจากห่อหุ้มแพ็กเก็ต IPv6 ภายในส่วนหัวของอุโมงค์ข้อมูลหรือไปยังไคลเอ็นต์อุปกรณ์เคลื่อนที่ผ่านอุโมงค์ข้อมูลทางลัด
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 จากอินเทอร์เฟซ Tunnel EndPoint และส่งต่อไปยังบริการผ่านการเชื่อมต่อ Service TCP หลังจากห่อหุ้มแพ็กเก็ต IPv6 ภายในส่วนหัวของอุโมงค์ข้อมูลหรือไปยังไคลเอ็นต์อุปกรณ์เคลื่อนที่ผ่านอุโมงค์ข้อมูลภายใน
หากการเชื่อมต่อบริการยังไม่เริ่มต้น ข้อความจะอยู่ในคิวจนกว่าจะตั้งค่าการเชื่อมต่อ สำหรับการเชื่อมข้อมูลไปยังอุปกรณ์ไคลเอ็นต์บนอุปกรณ์เคลื่อนที่ ระบบจะอ้างอิงตารางข้างเคียงของ nexthop
หากการเชื่อมต่อบริการยังไม่เริ่มต้น ข้อความจะอยู่ในคิวจนกว่าจะตั้งค่าการเชื่อมต่อ สำหรับการเชื่อมข้อมูลไปยังอุปกรณ์ไคลเอ็นต์บนอุปกรณ์เคลื่อนที่ ระบบจะอ้างอิงตารางข้างเคียงของ nexthop
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|