Radvd interface configuration. More...
#include <radvd-interface.h>
Public Member Functions | |
RadvdInterface (uint32_t interface) | |
Constructor. | |
RadvdInterface (uint32_t interface, uint32_t maxRtrAdvInterval, uint32_t minRtrAdvInterval) | |
Constructor. | |
~RadvdInterface () | |
Destructor. | |
uint32_t | GetInterface () const |
Get interface index for this configuration. | |
std::list< Ptr< RadvdPrefix > > | GetPrefixes () const |
Get list of prefixes advertised for this interface. | |
void | AddPrefix (Ptr< RadvdPrefix > routerPrefix) |
Add a prefix to advertise on interface. | |
bool | IsSendAdvert () const |
Is send advert enabled (periodic RA and reply to RS) ? | |
void | SetSendAdvert (bool sendAdvert) |
Set send advert flag. | |
uint32_t | GetMaxRtrAdvInterval () const |
Get maximum RA interval. | |
void | SetMaxRtrAdvInterval (uint32_t maxRtrAdvInterval) |
Get maximum RA interval. | |
uint32_t | GetMinRtrAdvInterval () const |
Get minimum RA interval. | |
void | SetMinRtrAdvInterval (uint32_t minRtrAdvInterval) |
Get minimum RA interval. | |
uint32_t | GetMinDelayBetweenRAs () const |
Get minimum delay between RAs. | |
void | SetMinDelayBetweenRAs (uint32_t minDelayBetweenRAs) |
Set minimum delay between RAs. | |
bool | IsManagedFlag () const |
Is managed flag enabled ? | |
void | SetManagedFlag (bool managedFlag) |
Set managed flag. | |
bool | IsOtherConfigFlag () const |
Is "other config" flag enabled ? | |
void | SetOtherConfigFlag (bool otherConfigFlag) |
Set "other config" flag. | |
uint32_t | GetLinkMtu () const |
Get link MTU. | |
void | SetLinkMtu (uint32_t linkMtu) |
Set link MTU. | |
uint32_t | GetReachableTime () const |
Get reachable time. | |
void | SetReachableTime (uint32_t reachableTime) |
Set reachable time. | |
uint32_t | GetDefaultLifeTime () const |
Get default lifetime. | |
void | SetDefaultLifeTime (uint32_t defaultLifeTime) |
Set default lifetime. | |
uint32_t | GetRetransTimer () const |
Get retransmission timer. | |
void | SetRetransTimer (uint32_t retransTimer) |
Set retransmission timer. | |
uint8_t | GetCurHopLimit () const |
Get current hop limit. | |
void | SetCurHopLimit (uint8_t curHopLimit) |
Set current hop limit. | |
uint8_t | GetDefaultPreference () const |
Get default preference. | |
void | SetDefaultPreference (uint8_t defaultPreference) |
Set default preference. | |
bool | IsSourceLLAddress () const |
Is source LLA option should be included in RA ? | |
void | SetSourceLLAddress (bool sourceLLAddress) |
Set flag to add or not LLA to RA. | |
bool | IsHomeAgentFlag () const |
Is "home agent" flag enabled ? | |
void | SetHomeAgentFlag (bool homeAgentFlag) |
Set "home agent" flag. | |
bool | IsHomeAgentInfo () const |
Is Home Agent Information option should be included in RA ? | |
void | SetHomeAgentInfo (bool homeAgentFlag) |
Set flag to add or not HA information option to RA. | |
uint32_t | GetHomeAgentLifeTime () const |
Get home agent lifetime. | |
void | SetHomeAgentLifeTime (uint32_t homeAgentLifeTime) |
Set home agent lifetime. | |
uint32_t | GetHomeAgentPreference () const |
Get home agent preference. | |
void | SetHomeAgentPreference (uint32_t homeAgentPreference) |
Set home agent preference. | |
bool | IsMobRtrSupportFlag () const |
Is "mobile router support" flag enabled ? | |
void | SetMobRtrSupportFlag (bool mobRtrSupportFlag) |
Set "mobile router support" flag. | |
bool | IsIntervalOpt () const |
Is advertisement interval option should be included in RA ? | |
void | SetIntervalOpt (bool intervalOpt) |
Set flag to add or not advertisement interval to RA. | |
Private Attributes | |
uint32_t | m_interface |
Interface to advertise RA. | |
RadvdPrefixList | m_prefixes |
List of prefixes to advertise. | |
bool | m_sendAdvert |
Flag whether or not router sends periodic RA and respond to RS. | |
uint32_t | m_maxRtrAdvInterval |
Maximum RA interval in milliseconds. | |
uint32_t | m_minRtrAdvInterval |
Minimum RA interval in milliseconds. | |
uint32_t | m_minDelayBetweenRAs |
Minimum delay between RA in milliseconds. | |
bool | m_managedFlag |
Managed flag. If true host use the stateful protocol for address autoconfiguration. | |
bool | m_otherConfigFlag |
Other configuration flag. If true host use stateful protocol for other (non-address) information. | |
uint32_t | m_linkMtu |
Link MTU to use. | |
uint32_t | m_reachableTime |
Reachable time in milliseconds. | |
uint32_t | m_retransTimer |
Retransmission timer in milliseconds. | |
uint32_t | m_curHopLimit |
Current hop limit (TTL). | |
uint32_t | m_defaultLifeTime |
Default life time in seconds. | |
uint8_t | m_defaultPreference |
Preference associated with default router. 0 = low 1 = medium 2 = high. | |
bool | m_sourceLLAddress |
Flag to add link-layer address in RA. | |
bool | m_homeAgentFlag |
Flag to add HA (home agent) flag in RA. | |
bool | m_homeAgentInfo |
Flag to add Home Agent Information option (Mobile IPv6). Currently not implemented. | |
uint32_t | m_homeAgentLifeTime |
Home agent lifetime in seconds. Ignored if home agent info is not set. | |
uint32_t | m_homeAgentPreference |
Home agent preference. Ignored if home agent info is not set. | |
bool | m_mobRtrSupportFlag |
Flag for HA to signals it supports Mobile Router registrations (NEMO Basic). | |
bool | m_intervalOpt |
Flag to add Advertisement Interval option in RA. |
Radvd interface configuration.
ns3::RadvdInterface::RadvdInterface | ( | uint32_t | interface | ) |
Constructor.
interface | interface index |
ns3::RadvdInterface::RadvdInterface | ( | uint32_t | interface, | |
uint32_t | maxRtrAdvInterval, | |||
uint32_t | minRtrAdvInterval | |||
) |
Constructor.
interface | interface index | |
maxRtrAdvInterval | maximum RA interval (ms) | |
minRtrAdvInterval | minimum RA interval (ms) |
void ns3::RadvdInterface::AddPrefix | ( | Ptr< RadvdPrefix > | routerPrefix | ) |
Add a prefix to advertise on interface.
routerPrefix | prefix to advertise |
uint8_t ns3::RadvdInterface::GetCurHopLimit | ( | ) | const |
Get current hop limit.
uint32_t ns3::RadvdInterface::GetDefaultLifeTime | ( | ) | const |
Get default lifetime.
uint8_t ns3::RadvdInterface::GetDefaultPreference | ( | ) | const |
Get default preference.
uint32_t ns3::RadvdInterface::GetHomeAgentLifeTime | ( | ) | const |
Get home agent lifetime.
uint32_t ns3::RadvdInterface::GetHomeAgentPreference | ( | ) | const |
Get home agent preference.
uint32_t ns3::RadvdInterface::GetInterface | ( | ) | const |
Get interface index for this configuration.
uint32_t ns3::RadvdInterface::GetLinkMtu | ( | ) | const |
Get link MTU.
uint32_t ns3::RadvdInterface::GetMaxRtrAdvInterval | ( | ) | const |
Get maximum RA interval.
uint32_t ns3::RadvdInterface::GetMinDelayBetweenRAs | ( | ) | const |
Get minimum delay between RAs.
uint32_t ns3::RadvdInterface::GetMinRtrAdvInterval | ( | ) | const |
Get minimum RA interval.
std::list<Ptr<RadvdPrefix> > ns3::RadvdInterface::GetPrefixes | ( | ) | const |
Get list of prefixes advertised for this interface.
uint32_t ns3::RadvdInterface::GetReachableTime | ( | ) | const |
Get reachable time.
uint32_t ns3::RadvdInterface::GetRetransTimer | ( | ) | const |
Get retransmission timer.
bool ns3::RadvdInterface::IsHomeAgentFlag | ( | ) | const |
Is "home agent" flag enabled ?
bool ns3::RadvdInterface::IsHomeAgentInfo | ( | ) | const |
Is Home Agent Information option should be included in RA ?
bool ns3::RadvdInterface::IsIntervalOpt | ( | ) | const |
Is advertisement interval option should be included in RA ?
bool ns3::RadvdInterface::IsManagedFlag | ( | ) | const |
Is managed flag enabled ?
bool ns3::RadvdInterface::IsMobRtrSupportFlag | ( | ) | const |
Is "mobile router support" flag enabled ?
bool ns3::RadvdInterface::IsOtherConfigFlag | ( | ) | const |
Is "other config" flag enabled ?
bool ns3::RadvdInterface::IsSendAdvert | ( | ) | const |
Is send advert enabled (periodic RA and reply to RS) ?
bool ns3::RadvdInterface::IsSourceLLAddress | ( | ) | const |
Is source LLA option should be included in RA ?
void ns3::RadvdInterface::SetCurHopLimit | ( | uint8_t | curHopLimit | ) |
Set current hop limit.
curHopLimit | current hop limit for the link |
void ns3::RadvdInterface::SetDefaultLifeTime | ( | uint32_t | defaultLifeTime | ) |
Set default lifetime.
defaultLifeTime | default lifetime |
void ns3::RadvdInterface::SetDefaultPreference | ( | uint8_t | defaultPreference | ) |
Set default preference.
defaultPreference | default preference |
void ns3::RadvdInterface::SetHomeAgentFlag | ( | bool | homeAgentFlag | ) |
Set "home agent" flag.
homeAgentFlag | value |
void ns3::RadvdInterface::SetHomeAgentInfo | ( | bool | homeAgentFlag | ) |
Set flag to add or not HA information option to RA.
homeAgentFlag | value |
void ns3::RadvdInterface::SetHomeAgentLifeTime | ( | uint32_t | homeAgentLifeTime | ) |
Set home agent lifetime.
homeAgentLifeTime | home agent lifetime |
void ns3::RadvdInterface::SetHomeAgentPreference | ( | uint32_t | homeAgentPreference | ) |
Set home agent preference.
homeAgentPreference | home agent preference |
void ns3::RadvdInterface::SetIntervalOpt | ( | bool | intervalOpt | ) |
Set flag to add or not advertisement interval to RA.
intervalOpt | value |
void ns3::RadvdInterface::SetLinkMtu | ( | uint32_t | linkMtu | ) |
Set link MTU.
linkMtu | link MTU |
void ns3::RadvdInterface::SetManagedFlag | ( | bool | managedFlag | ) |
Set managed flag.
managedFlag | value |
void ns3::RadvdInterface::SetMaxRtrAdvInterval | ( | uint32_t | maxRtrAdvInterval | ) |
Get maximum RA interval.
maxRtrAdvInterval | RA interval (ms) |
void ns3::RadvdInterface::SetMinDelayBetweenRAs | ( | uint32_t | minDelayBetweenRAs | ) |
Set minimum delay between RAs.
minDelayBetweenRAs | minimum delay (ms) |
void ns3::RadvdInterface::SetMinRtrAdvInterval | ( | uint32_t | minRtrAdvInterval | ) |
Get minimum RA interval.
minRtrAdvInterval | RA interval (ms). |
void ns3::RadvdInterface::SetMobRtrSupportFlag | ( | bool | mobRtrSupportFlag | ) |
Set "mobile router support" flag.
mobRtrSupportFlag | value |
void ns3::RadvdInterface::SetOtherConfigFlag | ( | bool | otherConfigFlag | ) |
Set "other config" flag.
otherConfigFlag | value |
void ns3::RadvdInterface::SetReachableTime | ( | uint32_t | reachableTime | ) |
Set reachable time.
reachableTime | reachable time |
void ns3::RadvdInterface::SetRetransTimer | ( | uint32_t | retransTimer | ) |
Set retransmission timer.
retransTimer | retransmission timer |
void ns3::RadvdInterface::SetSendAdvert | ( | bool | sendAdvert | ) |
Set send advert flag.
sendAdvert | value |
void ns3::RadvdInterface::SetSourceLLAddress | ( | bool | sourceLLAddress | ) |
Set flag to add or not LLA to RA.
sourceLLAddress | value |