xorp

OlsrTypes Struct Reference

A scope to hold primitive types specific to OLSR. More...

#include <olsr_types.hh>

List of all members.

Public Types

enum  LinkTypes {
  UNSPEC_LINK = 0, ASYM_LINK = 1, SYM_LINK = 2, LOST_LINK = 3,
  LINKTYPE_START = UNSPEC_LINK, LINKTYPE_END = LOST_LINK
}
enum  MessageTypes {
  HELLO_MESSAGE = 1, TC_MESSAGE = 2, MID_MESSAGE = 3, HNA_MESSAGE = 4,
  LQ_HELLO_MESSAGE = 201, LQ_TC_MESSAGE = 202
}
enum  NeighborTypes {
  NOT_NEIGH = 0, SYM_NEIGH = 1, MPR_NEIGH = 2, NEIGHBORTYPE_START = NOT_NEIGH,
  NEIGHBORTYPE_END = MPR_NEIGH
}
enum  Willingness {
  WILL_NEVER = 0, WILL_LOW = 1, WILL_DEFAULT = 3, WILL_HIGH = 6,
  WILL_ALWAYS = 7, WILL_MIN = WILL_LOW, WILL_MAX = WILL_ALWAYS, WILL_START = WILL_NEVER,
  WILL_END = WILL_ALWAYS
}
enum  TcRedundancyMode {
  TCR_MPRS_IN = 0, TCR_MPRS_INOUT = 1, TCR_ALL = 2, TCR_START = TCR_MPRS_IN,
  TCR_END = TCR_ALL
}
enum  VertexType {
  VT_ORIGINATOR = 0, VT_UNKNOWN = 0, VT_NEIGHBOR = 1, VT_TWOHOP = 2,
  VT_TOPOLOGY = 3, VT_MID = 4, VT_HNA = 5, VT_START = VT_ORIGINATOR,
  VT_END = VT_HNA
}
 

Type representing the type of a Vertex in the shortest-path-tree.

More...
enum  TlvType {
  TLV_VERSION = 1, TLV_SYSTEM_INFO = 2, TLV_OLSR_VERSION = 3, TLV_OLSR_FAMILY = 4,
  TLV_OLSR_N1 = 5, TLV_OLSR_L1 = 6, TLV_OLSR_N2 = 7, TLV_OLSR_L2 = 8,
  TLV_OLSR_MID = 9, TLV_OLSR_TC = 10, TLV_OLSR_HNA = 11
}
 

Type fields used when saving OLSR databases.


typedef uint32_t ExternalID
 The type of an OLSR external route ID.
typedef uint32_t FaceID
 The type of an OLSR interface ID.
typedef uint8_t LinkType
 The type of an OLSR link, as found in a HELLO message.
typedef uint32_t LogicalLinkID
 The type of an OLSR link ID.
typedef uint8_t MessageType
 The type of an OLSR protocol message.
typedef uint32_t MidEntryID
 The type of a multiple interface descriptor (MID) ID.
typedef uint32_t NeighborID
 The type of an OLSR neighbor ID.
typedef uint8_t NeighborType
 The type of an OLSR neighbor, as found in a HELLO message.
typedef uint8_t WillType
 Type representing a node's willingness to forward.
typedef uint8_t TcRedundancyType
 Type representing a node's TC redundancy mode.
typedef uint32_t TopologyID
 The type of an OLSR topology set entry ID.
typedef uint32_t TwoHopNodeID
 The type of an OLSR two-hop node ID.
typedef uint32_t TwoHopLinkID
 The type of an OLSR two-hop link ID.

Static Public Attributes

static const int DEFAULT_STATIC_FACE_COST = 0
 The default static cost of an OLSR interface.
static const int MAX_TTL = 255
 The maximum time-to-live of an OLSR message.
static const int DEFAULT_HELLO_INTERVAL = 2
 The default interval between HELLO advertisements, in seconds.
static const int DEFAULT_REFRESH_INTERVAL = 2
 The default interval between link advertisements, in seconds.
static const int DEFAULT_TC_INTERVAL = 5
 The default interval between TC broadcasts, in seconds.
static const int DEFAULT_DUP_HOLD_TIME = 30
 The default lifetime for each histogram-based duplicate message detection entry.
static const int DEFAULT_MID_INTERVAL = DEFAULT_TC_INTERVAL
 The default interval between MID broadcasts, in seconds.
static const int DEFAULT_HNA_INTERVAL = DEFAULT_TC_INTERVAL
 The default interval between HNA broadcasts, in seconds.
static const ExternalID UNUSED_EXTERNAL_ID = 0
static const FaceID UNUSED_FACE_ID = 0
static double DEFAULT_HYST_THRESHOLD_HIGH = 0.8f
 The default link hysteresis high threshold.
static double DEFAULT_HYST_THRESHOLD_LOW = 0.3f
 The default link hysteresis low threshold.
static double DEFAULT_HYST_SCALING = 0.3f
 The default link hysteresis scaling factor.
static const int NUM_LINKTYPE
static const LogicalLinkID UNUSED_LINK_ID = 0
static const MidEntryID UNUSED_MID_ID = 0
static const NeighborID UNUSED_NEIGHBOR_ID = 0
static const int NUM_NEIGHBORTYPE
static const uint16_t DEFAULT_OLSR_PORT = 698
 The default UDP port for the OLSR protocol.
static const uint8_t DEFAULT_TC_REDUNDANCY = TCR_MPRS_IN
 The default TC_REDUNDANCY value.
static const uint8_t DEFAULT_MPR_COVERAGE = 1
 The default number of MPRs which must cover a two-hop neighbor when the OLSR MPR selection algorithm is enabled.
static const TopologyID UNUSED_TOPOLOGY_ID = 0
static const TwoHopNodeID UNUSED_TWOHOP_NODE_ID = 0
static const TwoHopLinkID UNUSED_TWOHOP_LINK_ID = 0

Detailed Description

A scope to hold primitive types specific to OLSR.

These are named exactly as they are in RFC 3626, to avoid any confusion.


Member Typedef Documentation

typedef uint8_t OlsrTypes::TcRedundancyType

Type representing a node's TC redundancy mode.

Section 15.1: TC_REDUNDANCY parameter.


Member Enumeration Documentation

Type representing the type of a Vertex in the shortest-path-tree.

SPT is a meta-class which embeds the Vertex as a POD type, therefore, inheritance cannot be used to represent the vertex type.


Member Data Documentation

const int OlsrTypes::DEFAULT_REFRESH_INTERVAL = 2 [static]

The default interval between link advertisements, in seconds.

Used in situations where HELLO advertisements are segmented.

const int OlsrTypes::NUM_LINKTYPE [static]
Initial value:
    LINKTYPE_END - LINKTYPE_START + 1
const int OlsrTypes::NUM_NEIGHBORTYPE [static]
Initial value:
    NEIGHBORTYPE_END - NEIGHBORTYPE_START + 1

The documentation for this struct was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations