nl:: Weave:: Profiles:: WeaveTunnel:: WeaveTunnelAgent
สรุป
ผู้ผลิตและผู้ทำลาย |
|
---|---|
WeaveTunnelAgent(void)
|
ประเภทสาธารณะ |
|
---|---|
AgentState{
|
enum สถานะของ Agent ของ Tunnel ที่เกี่ยวข้องกับการเชื่อมต่อกับบริการ |
AgentState
|
Typedef สถานะของ Agent ของ Tunnel ที่เกี่ยวข้องกับการเชื่อมต่อกับบริการ |
OnServiceTunnelReconnectNotifyFunct)(TunnelType tunType, const char *reconnectHost, const uint16_t reconnectPort, void *appCtxt)
|
Typedefvoid(*
ตัวชี้ฟังก์ชันไปยังตัวแฮนเดิลที่ตั้งค่าโดยเลเยอร์ที่สูงขึ้นเมื่อมีการเชื่อมต่อ Tunnel Reconnect จากบริการ |
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
แพลตฟอร์มจะเรียกใช้ Callback เมื่อผลลัพธ์ของตัวตรวจสอบออนไลน์ของเครือข่ายพร้อมใช้งาน
|
ResetPrimaryReconnectBackoff(bool reconnectImmediately)
|
รีเซ็ตเวลาเชื่อมต่อใหม่สำหรับอุโมงค์ข้อมูลหลัก
|
SetAuthMode(const WeaveAuthMode authMode)
|
void
ตั้งค่า WeaveAuthMode สำหรับอุโมงค์ข้อมูล
|
SetDestination(const uint64_t nodeId, const IPAddress ipAddr, const uint16_t servicePort)
|
void
ตั้งค่า NodeId, IPAddress และพอร์ตปลายทางสำหรับอุโมงค์ข้อมูล
|
SetTunnelingDeviceRole(const Role role)
|
void
กำหนดบทบาทของอุปกรณ์อุโมงค์(BorderGateway, StandaoneDevice, MobileDevice) สำหรับอุโมงค์
|
Shutdown(void)
|
ปิด Tunnel Agent
|
StartServiceTunnel(void)
|
เริ่มต้นอุโมงค์ข้อมูลบริการ
|
StartServiceTunnel(uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode)
|
เริ่มต้นอุโมงค์ข้อมูลบริการ
|
StopServiceTunnel(void)
|
void
ปิดการเชื่อมต่อ Tunnel กับบริการ
|
StopServiceTunnel(WEAVE_ERROR err)
|
void
ปิดการเชื่อมต่อ Tunnel กับบริการ
|
ฟังก์ชันสาธารณะแบบคงที่ |
|
---|---|
RecvdFromShortcutUDPTunnel(WeaveMessageLayer *msgLayer, PacketBuffer *message)
|
void
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 แบบ Tunnel ผ่านอุโมงค์ข้อมูล UDP ทางลัดระหว่างเกตเวย์ชายแดนและอุปกรณ์เคลื่อนที่ และส่งต่อไปยังอินเทอร์เฟซ Tunnel EndPoint หลังถอดรหัสแพ็กเก็ต IPv6 ดิบจากในส่วนหัวของอุโมงค์ข้อมูล
|
RecvdFromTunnelEndPoint(TunEndPoint *tunEP, PacketBuffer *message)
|
void
ตัวแฮนเดิลสำหรับรับแพ็กเก็ต IPv6 จากอินเทอร์เฟซ Tunnel EndPoint และส่งต่อไปยังบริการผ่านการเชื่อมต่อ Service TCP หลังจากรวมแพ็กเก็ต IPv6 ภายในส่วนหัวของอุโมงค์ข้อมูลแล้ว หรือไคลเอ็นต์ Mobile ผ่านอุโมงค์ทางลัด
|
ประเภทสาธารณะ
AgentState
AgentState
สถานะของ Agent ของ Tunnel ที่เกี่ยวข้องกับการเชื่อมต่อกับบริการ
พร็อพเพอร์ตี้ | |
---|---|
kState_BkupOnlyTunModeEstablished
|
ใช้เพื่อระบุว่าสร้างอุโมงค์ข้อมูลข้อมูลสำรองไปยังบริการแล้ว |
kState_Initialized_NoTunnel
|
ใช้เพื่อระบุว่ามีการเริ่มต้น Agent ของ Tunnel แล้ว แต่ยังไม่ได้สร้างอุโมงค์ข้อมูล |
kState_NotInitialized
|
ใช้เพื่อระบุว่าไม่มีการเริ่มต้น Agent ของ Tunnel |
kState_PrimaryAndBkupTunModeEstablished
|
ใช้เพื่อระบุว่ามีการสร้างอุโมงค์ข้อมูลหลักและอุโมงค์ข้อมูลสํารองแล้ว |
kState_PrimaryTunModeEstablished
|
ใช้เพื่อระบุว่าสร้างอุโมงค์ข้อมูลหลักไปยังบริการแล้ว |
AgentState
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelAgent::AgentState AgentState
สถานะของ Agent ของ Tunnel ที่เกี่ยวข้องกับการเชื่อมต่อกับบริการ
OnServiceTunnelReconnectNotifyFunct
void(* OnServiceTunnelReconnectNotifyFunct)(TunnelType tunType, const char *reconnectHost, const uint16_t reconnectPort, void *appCtxt)
ตัวชี้ฟังก์ชันไปยังตัวแฮนเดิลที่ตั้งค่าโดยเลเยอร์ที่สูงขึ้นเมื่อมีการเชื่อมต่อ Tunnel Reconnect จากบริการ
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
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 )
Init
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, ตั้งค่าอินเทอร์เฟซ Tunnel, เริ่มต้นตัวแปรของสมาชิก, Callback และ WeaveTunnelControl
Init
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, ตั้งค่าอินเทอร์เฟซ Tunnel, เริ่มต้นตัวแปรของสมาชิก, Callback และ WeaveTunnelControl
IsPrimaryTunnelEnabled
bool IsPrimaryTunnelEnabled( void ) const
ตรวจสอบว่าเปิดใช้อุโมงค์ข้อมูลหลักอยู่หรือไม่
รายละเอียด | |
---|---|
การคืนสินค้า |
"จริง" หากเปิดใช้อยู่ หรือ "เท็จ"
|
IsPrimaryTunnelRoutingRestricted
bool IsPrimaryTunnelRoutingRestricted( void )
ตรวจสอบว่าอุโมงค์ข้อมูลหลักอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางโดยบริการหรือไม่
ตรวจสอบว่าอุโมงค์ข้อมูลหลักอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางหรือไม่
รายละเอียด | |
---|---|
การคืนสินค้า |
เป็นจริงหากมีการสร้างอุโมงค์หลักขึ้นแต่อยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางโดยบริการ
|
IsTunnelRoutingRestricted
bool IsTunnelRoutingRestricted( void )
ตรวจสอบว่าอุโมงค์ข้อมูลอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางโดยบริการหรือไม่
ตรวจสอบว่าอุโมงค์ข้อมูลอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางหรือไม่
รายละเอียด | |
---|---|
การคืนสินค้า |
จริง หากมีการสร้างอุโมงค์ข้อมูลหลักหรืออุโมงค์ข้อมูลสำรอง อย่างใดอย่างหนึ่ง และบริการทั้งสองจะอยู่ภายใต้ข้อจำกัดการกำหนดเส้นทางโดยบริการ
|
NetworkOnlineCheckResult
void NetworkOnlineCheckResult( TunnelType tunType, bool isOnline )
แพลตฟอร์มจะเรียกใช้ Callback เมื่อผลลัพธ์ของตัวตรวจสอบออนไลน์ของเครือข่ายพร้อมใช้งาน
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
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 และพอร์ตปลายทางสำหรับอุโมงค์ข้อมูล
ตั้งค่า NodeId ปลายทางและ IPAddress สำหรับอุโมงค์ข้อมูล
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
SetTunnelingDeviceRole
void SetTunnelingDeviceRole( const Role role )
กำหนดบทบาทของอุปกรณ์อุโมงค์(BorderGateway, StandalonDevice, MobileDevice) สำหรับอุโมงค์
กำหนดบทบาทของอุปกรณ์อุโมงค์(BorderGateway กับสแตนด์อโลน) สำหรับอุโมงค์ข้อมูล
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
ปิดการทำงาน
WEAVE_ERROR Shutdown( void )
ปิด Tunnel Agent
การดำเนินการนี้จะหยุดการเชื่อมต่อกับบริการ และปิดอินเทอร์เฟซ TunEndPoint หลังจากนำที่อยู่และเส้นทางที่เชื่อมโยงกับอินเทอร์เฟซของอุโมงค์ข้อมูลออก
การดำเนินการนี้จะหยุดการเชื่อมต่อกับบริการ และปิดอินเทอร์เฟซ TunEndPoint หลังจากนำที่อยู่และเส้นทางที่เชื่อมโยงกับอินเทอร์เฟซของอุโมงค์ข้อมูลออก
รายละเอียด | |
---|---|
การคืนสินค้า |
WEAVE_NO_ERROR สำหรับสำเร็จ หรือเป็นประเภท WEAVE_ERROR ที่เกี่ยวข้อง
|
StartServiceTunnel
WEAVE_ERROR StartServiceTunnel( void )
เริ่มต้นอุโมงค์ข้อมูลบริการ
การดำเนินการนี้จะเปิดใช้อุโมงค์ข้อมูลและพยายามสร้างการเชื่อมต่อกับบริการ
การดำเนินการนี้จะพยายามสร้างการเชื่อมต่อกับบริการ และกำหนดเส้นทาง Fabric ไปยังอินเทอร์เฟซของอุโมงค์ข้อมูล
รายละเอียด | |
---|---|
การคืนสินค้า |
WEAVE_NO_ERROR สำหรับสำเร็จ หรือเป็นประเภท WEAVE_ERROR ที่เกี่ยวข้อง
|
StartServiceTunnel
WEAVE_ERROR StartServiceTunnel( uint64_t dstNodeId, IPAddress dstIPAddr, WeaveAuthMode authMode )
เริ่มต้นอุโมงค์ข้อมูลบริการ
การดำเนินการนี้จะเปิดใช้อุโมงค์ข้อมูลและพยายามสร้างการเชื่อมต่อกับบริการ
StopServiceTunnel
void StopServiceTunnel( void )
ปิดการเชื่อมต่อ Tunnel กับบริการ
StopServiceTunnel
void StopServiceTunnel( WEAVE_ERROR err )
ปิดการเชื่อมต่อ Tunnel กับบริการ
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
WeaveTunnelAgent
WeaveTunnelAgent( void )
ฟังก์ชันสาธารณะแบบคงที่
RecvdFromShortcutUDPTunnel
void RecvdFromShortcutUDPTunnel( WeaveMessageLayer *msgLayer, PacketBuffer *message )
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 แบบ Tunnel ผ่านอุโมงค์ข้อมูล UDP ทางลัดระหว่างเกตเวย์ชายแดนและอุปกรณ์เคลื่อนที่ และส่งต่อไปยังอินเทอร์เฟซ Tunnel EndPoint หลังถอดรหัสแพ็กเก็ต IPv6 ดิบจากในส่วนหัวของอุโมงค์ข้อมูล
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 แบบ Tunnel จากการเชื่อมต่อ Service TCP และส่งต่อไปยังอินเทอร์เฟซ Tunnel EndPoint หลังจากถอดรหัสแพ็กเก็ต IPv6 ดิบจากในส่วนหัวของอุโมงค์ข้อมูล
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
RecvdFromTunnelEndPoint
void RecvdFromTunnelEndPoint( TunEndPoint *tunEP, PacketBuffer *message )
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 จากอินเทอร์เฟซ Tunnel EndPoint และส่งต่อ โดยส่งไปยังบริการผ่านการเชื่อมต่อ Service TCP หลังจากรวมแพ็กเก็ต IPv6 ภายในส่วนหัวของอุโมงค์ข้อมูลแล้ว หรือไคลเอ็นต์ Mobile ผ่านอุโมงค์ทางลัด
ตัวแฮนเดิลเพื่อรับแพ็กเก็ต IPv6 จากอินเทอร์เฟซ Tunnel EndPoint และส่งต่อ โดยส่งไปยังบริการผ่านการเชื่อมต่อ Service TCP หลังจากรวมแพ็กเก็ต IPv6 ภายในส่วนหัวของอุโมงค์ข้อมูลแล้ว หรือไคลเอ็นต์ Mobile ผ่านอุโมงค์ข้อมูลภายใน
หากการเชื่อมต่อบริการยังไม่ได้ทำ ข้อความจะอยู่ในคิวจนกว่าจะตั้งค่าการเชื่อมต่อ สำหรับ Tunnel ไปยังอุปกรณ์ไคลเอ็นต์ Mobile จะมีการอ้างอิงตาราง Nexthop ใกล้เคียง
หากการเชื่อมต่อบริการยังไม่ได้ทำ ข้อความจะอยู่ในคิวจนกว่าจะตั้งค่าการเชื่อมต่อ สำหรับ Tunnel ไปยังอุปกรณ์ไคลเอ็นต์ Mobile จะมีการอ้างอิงตาราง Nexthop ใกล้เคียง
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|