nl::Weave::Profiles::WeaveTunnel

Summary

Enumerations

@280 enum
@281{
  kStatusCode_TunnelOpenFail = 1,
  kStatusCode_TunnelCloseFail = 2,
  kStatusCode_TunnelRouteUpdateFail = 3,
  kStatusCode_TunnelReconnectFail = 4
}
enum
Weave Tunnel Status Codes.
LivenessStrategy{
  kLiveness_TCPKeepAlive = 1,
  kLiveness_TunnelControl = 2
}
enum
The liveness strategy employed to maintain the Tunnel connection to theService.
Role{
  kClientRole_BorderGateway = 1,
  kClientRole_StandaloneDevice = 2,
  kClientRole_MobileDevice = 3
}
enum
Roles that the Tunnel Agent can assume; i.e., either border gateway or mobile device.
SrcInterfaceType{
  kSrcInterface_WiFi = 1,
  kSrcInterface_Cellular = 2
}
enum
The technology type of the network interface on the device over which the Tunnel is established with the Service.
TunnelCtrlMsgType enum
TunnelPktDirection{
  kDir_Inbound = 1,
  kDir_Outbound = 2
}
enum
Direction of packet traversing the tunnel.
TunnelType{
  kType_TunnelUnknown = 0,
  kType_TunnelPrimary = 1,
  kType_TunnelBackup = 2,
  kType_TunnelShortcut = 3
}
enum
Type of the Tunnel.
WeaveTunnelVersion enum

Typedefs

LivenessStrategy typedef
enum nl::Weave::Profiles::WeaveTunnel::LivenessStrategy
The liveness strategy employed to maintain the Tunnel connection to theService.
Role typedef
enum nl::Weave::Profiles::WeaveTunnel::Role
Roles that the Tunnel Agent can assume; i.e., either border gateway or mobile device.
SrcInterfaceType typedef
enum nl::Weave::Profiles::WeaveTunnel::SrcInterfaceType
The technology type of the network interface on the device over which the Tunnel is established with the Service.
TunnelPktDirection typedef
enum nl::Weave::Profiles::WeaveTunnel::TunnelPktDirection
Direction of packet traversing the tunnel.
TunnelType typedef
enum nl::Weave::Profiles::WeaveTunnel::TunnelType
Type of the Tunnel.
WeaveTunnelVersion typedef
enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelVersion

Classes

nl::Weave::Profiles::WeaveTunnel::ReconnectParam

The reconnect policy parameters that are used to govern the way the tunnel reconnects to the Service.

nl::Weave::Profiles::WeaveTunnel::WeaveTunnelAgent
nl::Weave::Profiles::WeaveTunnel::WeaveTunnelConnectionMgr

This class encapsulates all the Weave tunnel connection states and the associated management logic and functions.

nl::Weave::Profiles::WeaveTunnel::WeaveTunnelControl
nl::Weave::Profiles::WeaveTunnel::WeaveTunnelHeader
nl::Weave::Profiles::WeaveTunnel::WeaveTunnelRoute

Namespaces

nl::Weave::Profiles::WeaveTunnel::Platform

Platform provided Weave Addressing and Routing routines.

Enumerations

@280

 @280

@281

 @281

Weave Tunnel Status Codes.

Properties
kStatusCode_TunnelCloseFail

The Service has encountered an error while closing the tunnel.

kStatusCode_TunnelOpenFail

The Service has encountered an error while opening the tunnel.

kStatusCode_TunnelReconnectFail

The Border gateway has encountered an error while reconnecting to the Service.

kStatusCode_TunnelRouteUpdateFail

The Service has encountered an error while updating the routes.

LivenessStrategy

 LivenessStrategy

The liveness strategy employed to maintain the Tunnel connection to theService.

Properties
kLiveness_TCPKeepAlive

Used to indicate that the tunnel connection liveness is maintained by TCP KeepAlives.

kLiveness_TunnelControl

Used to indicate that the tunnel connection liveness is maintained by Tunnel Control Liveness messages.

Role

 Role

Roles that the Tunnel Agent can assume; i.e., either border gateway or mobile device.

Properties
kClientRole_BorderGateway

The device is acting as a border gateway for the purpose of routing traffic to and from itself, as well as other devices in its associated fabric.

kClientRole_MobileDevice

The device is acting as a stand-alone node which does not route traffic for other devices.

It can establish a shortcut tunnel between itself and another border gateway.

kClientRole_StandaloneDevice

The device is acting as a stand-alone node which does not route traffic for other devices.

SrcInterfaceType

 SrcInterfaceType

The technology type of the network interface on the device over which the Tunnel is established with the Service.

Properties
kSrcInterface_Cellular

Used when the Cellular interface is used as the source of the Tunnel to the Service.

kSrcInterface_WiFi

Used when the WiFi interface is used as the source of the Tunnel to the Service.

TunnelCtrlMsgType

 TunnelCtrlMsgType

TunnelPktDirection

 TunnelPktDirection

Direction of packet traversing the tunnel.

Properties
kDir_Inbound

Indicates packet coming in to the border gateway over the tunnel.

kDir_Outbound

Indicates packet going out of the border gateway over the tunnel.

TunnelType

 TunnelType

Type of the Tunnel.

Properties
kType_TunnelBackup

A secondary tunnel serving as an alternate route between the device/fabric and Service.

in the event that no primary tunnel is available.

kType_TunnelPrimary

A primary tunnel for transiting traffic between the device/fabric and the Service.

kType_TunnelShortcut

Used to indicate a shortcut tunnel between a local stand-alone node(mobile device) and a border gateway.

kType_TunnelUnknown

Used to indicate an unknown tunnel type.

WeaveTunnelVersion

 WeaveTunnelVersion

Typedefs

LivenessStrategy

enum nl::Weave::Profiles::WeaveTunnel::LivenessStrategy LivenessStrategy

The liveness strategy employed to maintain the Tunnel connection to theService.

Role

enum nl::Weave::Profiles::WeaveTunnel::Role Role

Roles that the Tunnel Agent can assume; i.e., either border gateway or mobile device.

SrcInterfaceType

enum nl::Weave::Profiles::WeaveTunnel::SrcInterfaceType SrcInterfaceType

The technology type of the network interface on the device over which the Tunnel is established with the Service.

TunnelPktDirection

enum nl::Weave::Profiles::WeaveTunnel::TunnelPktDirection TunnelPktDirection

Direction of packet traversing the tunnel.

TunnelType

enum nl::Weave::Profiles::WeaveTunnel::TunnelType TunnelType

Type of the Tunnel.

WeaveTunnelVersion

enum nl::Weave::Profiles::WeaveTunnel::WeaveTunnelVersion WeaveTunnelVersion