nl:: Weave:: Profiles:: WeaveTunnel:: WeaveTunnelConnectionMgr
#include <src/lib/profiles/weave-tunneling/WeaveTunnelConnectionMgr.h>
Bu sınıf, tüm Weave tüneli bağlantı durumlarını ve ilişkili yönetim mantığını ve işlevlerini içerir.
Özet
Hizmete giden Weave tünelinin bulunacağı her arayüz üzerinden tüneli yönetmek için bu sınıfın bir örneği kullanılır.
Oluşturucular ve Yıkıcılar |
|
---|---|
WeaveTunnelConnectionMgr(void)
|
Herkese açık türler |
|
---|---|
ConnectPolicyCallback)(void *const appState, ReconnectParam &reconnectParam, uint32_t &delayMsec)
|
typedefvoid(*
Bir sonraki tünel yeniden bağlanmadan önce beklenecek zaman aralığını getirmek için geri çağırma. |
TunnelConnNotifyReasons{
|
enum |
TunnelConnNotifyReasons
|
typedef |
TunnelConnectionState{
|
enum |
TunnelConnectionState
|
typedef |
Herkese açık özellikler |
|
---|---|
mServiceConnDelayPolicyCallback
|
Herkese açık işlevler |
|
---|---|
Init(WeaveTunnelAgent *tunAgent, TunnelType tunType, SrcInterfaceType srcIntfType, const char *connIntfName)
|
WeaveTunnelConnectionMgr'yi başlatın.
|
ServiceTunnelClose(WEAVE_ERROR err)
|
void
Hizmet tünelini kapatın.
|
SetInterfaceName(const char *intfName)
|
void
Tünel bağlantısı için InterfaceName'i ayarlayın.
|
SetInterfaceType(const SrcInterfaceType srcIntfType)
|
void
Tünel bağlantısı için SrcInterfaceType öğesini ayarlayın.
|
Shutdown(void)
|
void
WeaveTunnelConnectionMgr'yi kapatın.
|
StopAndReconnectTunnelConn(ReconnectParam & reconnParam)
|
void
Hizmet tüneli bağlantısını durdurun ve yeniden bağlanmayı deneyin.
|
TryConnectingNow(void)
|
Hizmet ile bağlantı kurmaya çalışma.
|
Herkese açık statik işlevler |
|
---|---|
DefaultReconnectPolicyCallback(void *const appstate, ReconnectParam & reconnectParam, uint32_t & delayMsec)
|
void
Hizmete bir sonraki bağlantıda getirme işleminde varsayılan politika uygulaması.
|
HandleServiceConnectionClosed(WeaveConnection *con, WEAVE_ERROR conErr)
|
void
Hizmet TCP bağlantısı kapatıldığında işleyici çağrıldı.
|
HandleServiceConnectionComplete(WeaveConnection *con, WEAVE_ERROR conErr)
|
void
Hizmet TCP bağlantısı tamamlandığında işleyici çağrıldı.
|
RecvdFromService(WeaveConnection *con, const WeaveMessageInfo *msgInfo, PacketBuffer *message)
|
void
Ham IPv6 paketini tünel başlığının içinden ham IPv6 paketinin kapsülünden geçirdikten sonra, Hizmet TCP bağlantısından tünelli IPv6 paketlerini alıp Tünel Uç Nokta arayüzüne yönlendirme işleyicisi.
|
ServiceMgrStatusHandler(void *appState, WEAVE_ERROR err, StatusReport *report)
|
void
Hizmet Yöneticisi, hizmet ile TCP bağlantısı kuramazsa işleyici çağrılır.
|
Herkese açık türler
ConnectPolicyCallback
void(* ConnectPolicyCallback)(void *const appState, ReconnectParam &reconnectParam, uint32_t &delayMsec)
Bir sonraki tünel yeniden bağlanmadan önce beklenecek zaman aralığını getirmek için geri çağırma.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
TunnelConnNotifyReasons
TunnelConnNotifyReasons
Özellikler | |
---|---|
kStatus_TunBackupConnError
|
Yedek tünel bağlantı girişiminin başarısız olduğunu veya mevcut bir tünel bağlantı girişiminin yerel olarak iptal edildiğini ya da eş tarafından kapatıldığını belirtmek için kullanılır. |
kStatus_TunBackupLiveness
|
Yedek Dokuma tünelindeki Tünel Yayını sondası ile ilgili bilgileri göstermek için kullanılır. |
kStatus_TunBackupOnlyDown
|
Yedekleme tünelinin kapalı olduğunu belirtmek için kullanılır. |
kStatus_TunBackupReconnectRcvd
|
Hizmetin Yedek Weave tüneli için yeniden bağlantı isteğinde bulunduğunu belirtmek amacıyla kullanılır. |
kStatus_TunBackupUp
|
Yedekleme Örgütü tünelinin çalıştığını belirtmek için kullanılır. |
kStatus_TunDown
|
Weave tünelinin aşağı gittiğini belirtmek için kullanılır. |
kStatus_TunFailoverToBackup
|
Birincil tünelin kapalı olduğunu ve yedek tünele geçildiğini belirtmek için kullanılır. |
kStatus_TunPrimaryAndBackupUp
|
Hem Birincil hem de Yedek Dokuma tünelinin çalıştığını belirtmek için kullanılır. |
kStatus_TunPrimaryConnError
|
Birincil tünel bağlantı girişiminin başarısız olduğunu veya mevcut bir tünelin yerel olarak iptal edildiğini ya da eş tarafından kapatıldığını belirtmek için kullanılır. |
kStatus_TunPrimaryLiveness
|
Birincil Weave tünelindeki Tünel Yayını sondası ile ilgili bilgileri göstermek için kullanılır. |
kStatus_TunPrimaryReconnectRcvd
|
Hizmetin Birincil Weave tüneli için yeniden bağlantı isteğinde bulunduğunu belirtmek amacıyla kullanılır. |
kStatus_TunPrimaryUp
|
Birincil Weave tünelinin çalıştığını belirtmek için kullanılır. |
TunnelConnNotifyReasons
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelConnectionMgr::TunnelConnNotifyReasons TunnelConnNotifyReasons
TunnelConnectionState
TunnelConnectionState
Özellikler | |
---|---|
kState_Connecting
|
Örgü Tünel bağlantısının başlatıldığını belirtmek için kullanılır. |
kState_ConnectionEstablished
|
Örgü Tünel bağlantısının kurulduğunu ve rota bilgilerinin paylaşıldığını belirtmek için kullanılır. |
kState_NotConnected
|
Örgü Tüneli'nin bağlı olmadığını belirtmek için kullanılır. |
kState_ReconnectRecvd
|
Hizmetin, bir dizin aramasının ardından sınır ağ geçidinin yeniden bağlanmasını istediğini belirtmek için kullanılır. |
kState_TunnelClosing
|
Örgü Tüneli'nin kapanmakta ve bağlantının kopmakta olduğunu belirtmek için kullanılır. |
kState_TunnelOpen
|
Weave Tüneli'nin açık ve veri trafiği geçişi için hazır olduğunu belirtmek için kullanılır. |
TunnelConnectionState
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelConnectionMgr::TunnelConnectionState TunnelConnectionState
Herkese açık özellikler
mServiceConnDelayPolicyCallback
ConnectPolicyCallback mServiceConnDelayPolicyCallback
Herkese açık işlevler
Init
WEAVE_ERROR Init( WeaveTunnelAgent *tunAgent, TunnelType tunType, SrcInterfaceType srcIntfType, const char *connIntfName )
WeaveTunnelConnectionMgr'yi başlatın.
ServiceTunnelClose
void ServiceTunnelClose( WEAVE_ERROR err )
Hizmet tünelini kapatın.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
SetInterfaceName
void SetInterfaceName( const char *intfName )
Tünel bağlantısı için InterfaceName'i ayarlayın.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
SetInterfaceType
void SetInterfaceType( const SrcInterfaceType srcIntfType )
Tünel bağlantısı için SrcInterfaceType öğesini ayarlayın.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
StopAndReconnectTunnelConn
void StopAndReconnectTunnelConn( ReconnectParam & reconnParam )
Hizmet tüneli bağlantısını durdurun ve yeniden bağlanmayı deneyin.
Ayrıntılar | |||
---|---|---|---|
Parametreler |
|
TryConnectingNow
WEAVE_ERROR TryConnectingNow( void )
Hizmet ile bağlantı kurmaya çalışma.
ServiceManager'ı kullanarak veya doğrudan hizmet ile bağlantı kurmayı deneyin.
WeaveTunnelConnectionMgr
WeaveTunnelConnectionMgr( void )
Herkese açık statik işlevler
DefaultReconnectPolicyCallback
void DefaultReconnectPolicyCallback( void *const appstate, ReconnectParam & reconnectParam, uint32_t & delayMsec )
Hizmete bir sonraki bağlantıda getirme işleminde varsayılan politika uygulaması.
Bu politika, artan bir pencerede ve en fazla WEAVE_CONFIG_ ekleyinING_RECONNECT_MAX_FIBONACCI_INDEX olan bir fibonacci dizisini izleyerek rastgele bir zaman dilimi (milisaniyelik çözünürlüklü) seçer.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
HandleServiceConnectionClosed
void HandleServiceConnectionClosed( WeaveConnection *con, WEAVE_ERROR conErr )
Hizmet TCP bağlantısı kapatıldığında işleyici çağrıldı.
mServiceConKeepAlive doğru değerine ayarlanmışsa cihaz, Hizmet ile bağlantıyı yeniden kurmaya çalışır.
Ardından cihaz, Hizmet ile olan bağlantıyı yeniden kurmaya çalışır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
HandleServiceConnectionComplete
void HandleServiceConnectionComplete( WeaveConnection *con, WEAVE_ERROR conErr )
Hizmet TCP bağlantısı tamamlandığında işleyici çağrıldı.
Cihaz, bu işlevden Hizmet'e giden tünel kontrol komutlarını başlatmaya devam eder.
Cihaz, bu işlevden Hizmet'e giden tünel kontrol komutlarını başlatmaya devam eder.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
RecvdFromService
void RecvdFromService( WeaveConnection *con, const WeaveMessageInfo *msgInfo, PacketBuffer *message )
Ham IPv6 paketini tünel başlığının içinden ham IPv6 paketinin kapsülünden geçirdikten sonra, Hizmet TCP bağlantısından tünelli IPv6 paketlerini alıp Tünel Uç Nokta arayüzüne yönlendirme işleyicisi.
Ayrıntılar | |||||||
---|---|---|---|---|---|---|---|
Parametreler |
|
ServiceMgrStatusHandler
void ServiceMgrStatusHandler( void *appState, WEAVE_ERROR err, StatusReport *report )
Hizmet Yöneticisi, hizmet ile TCP bağlantısı kuramazsa işleyici çağrılır.