The IPv6 representation of a network interface. More...
#include "ipv6-interface.h"
Inheritance diagram for ns3::Ipv6Interface:
Collaboration diagram for ns3::Ipv6Interface:Public Member Functions | |
| Ipv6Interface () | |
| Constructs an Ipv6Interface. | |
| Ipv6Interface (const Ipv6Interface &)=delete | |
| ~Ipv6Interface () override | |
| Destructor. | |
| bool | AddAddress (Ipv6InterfaceAddress iface) |
| Add an IPv6 address. | |
| void | AddAddressCallback (Callback< void, Ptr< Ipv6Interface >, Ipv6InterfaceAddress > addAddressCallback) |
| This callback is set when an address is added from an interface with auto-generated Ndisc cache and it allow the neighbor cache helper to update neighbor's Ndisc cache. | |
| Ipv6InterfaceAddress | GetAddress (uint32_t index) const |
| Get an address from IPv6 interface. | |
| Ipv6InterfaceAddress | GetAddressMatchingDestination (Ipv6Address dst) |
| Get an address which is in the same network prefix as destination. | |
| uint16_t | GetBaseReachableTime () const |
| Get the base reachable time. | |
| uint8_t | GetCurHopLimit () const |
| Get the current hop limit value. | |
| virtual Ptr< NetDevice > | GetDevice () const |
| Get the NetDevice. | |
| Ipv6InterfaceAddress | GetLinkLocalAddress () const |
| Get link-local address from IPv6 interface. | |
| uint16_t | GetMetric () const |
| Get the metric. | |
| uint32_t | GetNAddresses () const |
| Get number of addresses on this IPv6 interface. | |
| Ptr< NdiscCache > | GetNdiscCache () const |
| uint16_t | GetReachableTime () const |
| Get the reachable time. | |
| uint16_t | GetRetransTimer () const |
| Get the retransmission timer. | |
| bool | IsDown () const |
| Is the interface DOWN ? | |
| bool | IsForwarding () const |
| If the interface allows forwarding packets. | |
| bool | IsSolicitedMulticastAddress (Ipv6Address address) const |
| Checks if the address is a Solicited Multicast address for this interface. | |
| bool | IsUp () const |
| Is the interface UP ? | |
| Ipv6Interface & | operator= (const Ipv6Interface &)=delete |
| Ipv6InterfaceAddress | RemoveAddress (Ipv6Address address) |
| Remove the given Ipv6 address from the interface. | |
| Ipv6InterfaceAddress | RemoveAddress (uint32_t index) |
| Remove an address from interface. | |
| void | RemoveAddressCallback (Callback< void, Ptr< Ipv6Interface >, Ipv6InterfaceAddress > removeAddressCallback) |
| This callback is set when an address is removed from an interface with auto-generated Ndisc cache and it allow the neighbor cache helper to update neighbor's Ndisc cache. | |
| void | Send (Ptr< Packet > p, const Ipv6Header &hdr, Ipv6Address dest) |
| Send a packet through this interface. | |
| void | SetBaseReachableTime (uint16_t baseReachableTime) |
| Set the base reachable time. | |
| void | SetCurHopLimit (uint8_t curHopLimit) |
| Set the current hop limit. | |
| void | SetDevice (Ptr< NetDevice > device) |
| Set the NetDevice. | |
| void | SetDown () |
| Disable this interface. | |
| void | SetForwarding (bool forward) |
| Set forwarding enabled or not. | |
| void | SetMetric (uint16_t metric) |
| Set the metric. | |
| void | SetNode (Ptr< Node > node) |
| Set node associated with interface. | |
| void | SetNsDadUid (Ipv6Address address, uint32_t uid) |
| Update NS DAD packet UID of an interface address. | |
| void | SetReachableTime (uint16_t reachableTime) |
| Set the reachable time. | |
| void | SetRetransTimer (uint16_t retransTimer) |
| Set the retransmission timer. | |
| void | SetState (Ipv6Address address, Ipv6InterfaceAddress::State_e state) |
| Update state of an interface address. | |
| void | SetTrafficControl (Ptr< TrafficControlLayer > tc) |
| Set the TrafficControlLayer. | |
| void | SetUp () |
| Enable this interface. | |
Public Member Functions inherited from ns3::Object | |
| Object () | |
| Constructor. | |
| ~Object () override | |
| Destructor. | |
| void | AggregateObject (Ptr< Object > other) |
| Aggregate two Objects together. | |
| void | Dispose () |
| Dispose of this Object. | |
| AggregateIterator | GetAggregateIterator () const |
| Get an iterator to the Objects aggregated to this one. | |
| TypeId | GetInstanceTypeId () const final |
| Get the most derived TypeId for this Object. | |
| template<typename T> | |
| Ptr< T > | GetObject () const |
| Get a pointer to the requested aggregated Object. | |
| template<> | |
| Ptr< Object > | GetObject () const |
| Specialization of () for objects of type ns3::Object. | |
| template<typename T> | |
| Ptr< T > | GetObject (TypeId tid) const |
| Get a pointer to the requested aggregated Object by TypeId. | |
| template<> | |
| Ptr< Object > | GetObject (TypeId tid) const |
| Specialization of (TypeId tid) for objects of type ns3::Object. | |
| void | Initialize () |
| Invoke DoInitialize on all Objects aggregated to this one. | |
| bool | IsInitialized () const |
| Check if the object has been initialized. | |
| void | UnidirectionalAggregateObject (Ptr< Object > other) |
| Aggregate an Object to another Object. | |
Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter > | |
| SimpleRefCount () | |
| Default constructor. | |
| SimpleRefCount (const SimpleRefCount &o) | |
| Copy constructor. | |
| uint32_t | GetReferenceCount () const |
| Get the reference count of the object. | |
| SimpleRefCount & | operator= (const SimpleRefCount &o) |
| Assignment operator. | |
| void | Ref () const |
| Increment the reference count. | |
| void | Unref () const |
| Decrement the reference count. | |
Public Member Functions inherited from ns3::ObjectBase | |
| virtual | ~ObjectBase () |
| Virtual destructor. | |
| void | GetAttribute (std::string name, AttributeValue &value, bool permissive=false) const |
| Get the value of an attribute, raising fatal errors if unsuccessful. | |
| bool | GetAttributeFailSafe (std::string name, AttributeValue &value) const |
| Get the value of an attribute without raising errors. | |
| void | SetAttribute (std::string name, const AttributeValue &value) |
| Set a single attribute, raising fatal errors if unsuccessful. | |
| bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
| Set a single attribute without raising errors. | |
| bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
| Connect a TraceSource to a Callback with a context. | |
| bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
| Connect a TraceSource to a Callback without a context. | |
| bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
| Disconnect from a TraceSource a Callback previously connected with a context. | |
| bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
| Disconnect from a TraceSource a Callback previously connected without a context. | |
Static Public Member Functions | |
| static TypeId | GetTypeId () |
| Get the type ID. | |
Static Public Member Functions inherited from ns3::Object | |
| static TypeId | GetTypeId () |
| Register this type. | |
Static Public Member Functions inherited from ns3::ObjectBase | |
| static TypeId | GetTypeId () |
| Get the type ID. | |
Protected Member Functions | |
| void | DoDispose () override |
| Dispose this object. | |
Protected Member Functions inherited from ns3::Object | |
| Object (const Object &o) | |
| Copy an Object. | |
| virtual void | DoInitialize () |
| Initialize() implementation. | |
| virtual void | NotifyNewAggregate () |
| Notify all Objects aggregated to this one of a new Object being aggregated. | |
Protected Member Functions inherited from ns3::ObjectBase | |
| void | ConstructSelf (const AttributeConstructionList &attributes) |
| Complete construction of ObjectBase; invoked by derived classes. | |
| virtual void | NotifyConstructionCompleted () |
| Notifier called once the ObjectBase is fully constructed. | |
Private Types | |
| typedef std::list< std::pair< Ipv6InterfaceAddress, Ipv6Address > > | Ipv6InterfaceAddressList |
| Container for the Ipv6InterfaceAddresses. | |
| typedef std::list< std::pair< Ipv6InterfaceAddress, Ipv6Address > >::const_iterator | Ipv6InterfaceAddressListCI |
| Const Container Iterator for the Ipv6InterfaceAddresses. | |
| typedef std::list< std::pair< Ipv6InterfaceAddress, Ipv6Address > >::iterator | Ipv6InterfaceAddressListI |
| Container Iterator for the Ipv6InterfaceAddresses. | |
Private Member Functions | |
| void | DoSetup () |
| Initialize interface. | |
Private Attributes | |
| Callback< void, Ptr< Ipv6Interface >, Ipv6InterfaceAddress > | m_addAddressCallback |
| add address callback | |
| Ipv6InterfaceAddressList | m_addresses |
| The addresses assigned to this interface. | |
| uint16_t | m_baseReachableTime |
| Base value used for computing the random reachable time value (in millisecond). | |
| uint8_t | m_curHopLimit |
| Current hop limit. | |
| Ptr< NetDevice > | m_device |
| NetDevice associated with this interface. | |
| bool | m_forwarding |
| Forwarding state. | |
| bool | m_ifup |
| The state of this interface. | |
| ns3::TracedCallback< bool, int32_t > | m_interfaceStatus |
| The trace fired when the interface state changes. | |
| Ipv6InterfaceAddress | m_linkLocalAddress |
| The link-local addresses assigned to this interface. | |
| uint16_t | m_metric |
| The metric. | |
| Ptr< NdiscCache > | m_ndCache |
| Neighbor cache. | |
| Ptr< Node > | m_node |
| Node associated with this interface. | |
| uint16_t | m_reachableTime |
| Reachable time (in millisecond). | |
| Callback< void, Ptr< Ipv6Interface >, Ipv6InterfaceAddress > | m_removeAddressCallback |
| remove address callback | |
| uint16_t | m_retransTimer |
| Retransmission timer (in millisecond). | |
| Ptr< TrafficControlLayer > | m_tc |
| TrafficControlLayer associated with this interface. | |
Additional Inherited Members | |
Related Symbols inherited from ns3::ObjectBase | |
| static TypeId | GetObjectIid () |
| Ensure the TypeId for ObjectBase gets fully configured to anchor the inheritance tree properly. | |
The IPv6 representation of a network interface.
By default IPv6 interfaces are created in the "down" state with IP "fe80::1" and a /64 prefix. Before becoming usable, the user must invoke SetUp on them once the final IPv6 address and mask has been set.
ns3::Ipv6Interface is accessible through the following paths with Config::Set and Config::Connect:
No Attributes are defined for this type
Group: Internet
Size of this type is 216 bytes (on a 64-bit architecture).
Definition at line 42 of file ipv6-interface.h.
|
private |
Container for the Ipv6InterfaceAddresses.
Definition at line 299 of file ipv6-interface.h.
|
private |
Const Container Iterator for the Ipv6InterfaceAddresses.
Definition at line 311 of file ipv6-interface.h.
|
private |
Container Iterator for the Ipv6InterfaceAddresses.
Definition at line 305 of file ipv6-interface.h.
| ns3::Ipv6Interface::Ipv6Interface | ( | ) |
Constructs an Ipv6Interface.
Definition at line 47 of file ipv6-interface.cc.
References m_baseReachableTime, m_curHopLimit, m_device, m_forwarding, m_ifup, m_metric, m_ndCache, m_node, m_reachableTime, m_retransTimer, m_tc, and NS_LOG_FUNCTION.
Referenced by Ipv6Interface(), and operator=().
Here is the caller graph for this function:
|
override |
Destructor.
Definition at line 63 of file ipv6-interface.cc.
|
delete |
| bool ns3::Ipv6Interface::AddAddress | ( | Ipv6InterfaceAddress | iface | ) |
Add an IPv6 address.
| iface | address to add |
Definition at line 216 of file ipv6-interface.cc.
References ns3::Icmpv6L4Protocol::DoDAD(), ns3::DynamicCast(), ns3::Icmpv6L4Protocol::FunctionDadTimeout(), ns3::Ipv6InterfaceAddress::GetAddress(), ns3::Ipv6::GetProtocol(), ns3::Icmpv6L4Protocol::GetStaticProtocolNumber(), ns3::Ipv6Address::IsAny(), ns3::Ipv6Address::IsLocalhost(), m_addAddressCallback, m_addresses, m_device, m_node, ns3::Ipv6Address::MakeSolicitedAddress(), NS_LOG_FUNCTION, ns3::Simulator::Schedule(), and ns3::Seconds().
Referenced by DoSetup().
Here is the call graph for this function:
Here is the caller graph for this function:| void ns3::Ipv6Interface::AddAddressCallback | ( | Callback< void, Ptr< Ipv6Interface >, Ipv6InterfaceAddress > | addAddressCallback | ) |
This callback is set when an address is added from an interface with auto-generated Ndisc cache and it allow the neighbor cache helper to update neighbor's Ndisc cache.
| addAddressCallback | Callback when remove an address. |
Definition at line 612 of file ipv6-interface.cc.
References m_addAddressCallback, and NS_LOG_FUNCTION.
|
overrideprotectedvirtual |
Dispose this object.
Reimplemented from ns3::Object.
Definition at line 68 of file ipv6-interface.cc.
References ns3::Object::DoDispose(), m_device, m_ndCache, m_node, m_tc, and NS_LOG_FUNCTION.
Here is the call graph for this function:
|
private |
Initialize interface.
Definition at line 79 of file ipv6-interface.cc.
References AddAddress(), ns3::DynamicCast(), GetDevice(), ns3::Ipv6::GetProtocol(), ns3::Icmpv6L4Protocol::GetStaticProtocolNumber(), m_device, m_linkLocalAddress, m_ndCache, m_node, ns3::Ipv6Address::MakeAutoconfiguredLinkLocalAddress(), and NS_LOG_FUNCTION.
Referenced by SetUp().
Here is the call graph for this function:
Here is the caller graph for this function:| Ipv6InterfaceAddress ns3::Ipv6Interface::GetAddress | ( | uint32_t | index | ) | const |
Get an address from IPv6 interface.
| index | index |
Definition at line 303 of file ipv6-interface.cc.
References m_addresses, NS_FATAL_ERROR, and NS_LOG_FUNCTION.
Referenced by ns3::Icmpv6L4Protocol::FunctionDadTimeout().
Here is the caller graph for this function:| Ipv6InterfaceAddress ns3::Ipv6Interface::GetAddressMatchingDestination | ( | Ipv6Address | dst | ) |
Get an address which is in the same network prefix as destination.
| dst | destination address |
Definition at line 393 of file ipv6-interface.cc.
References ns3::Ipv6InterfaceAddress::GetAddress(), ns3::Ipv6InterfaceAddress::GetPrefix(), ns3::Ipv6Prefix::IsMatch(), m_addresses, and NS_LOG_FUNCTION.
Here is the call graph for this function:| uint16_t ns3::Ipv6Interface::GetBaseReachableTime | ( | ) | const |
Get the base reachable time.
Definition at line 530 of file ipv6-interface.cc.
References m_baseReachableTime, and NS_LOG_FUNCTION.
| uint8_t ns3::Ipv6Interface::GetCurHopLimit | ( | ) | const |
Get the current hop limit value.
Definition at line 516 of file ipv6-interface.cc.
References m_curHopLimit, and NS_LOG_FUNCTION.
Get the NetDevice.
Definition at line 135 of file ipv6-interface.cc.
References m_device, and NS_LOG_FUNCTION.
Referenced by DoSetup(), ns3::Icmpv6L4Protocol::FunctionDadTimeout(), and Send().
Here is the caller graph for this function:| Ipv6InterfaceAddress ns3::Ipv6Interface::GetLinkLocalAddress | ( | ) | const |
Get link-local address from IPv6 interface.
Definition at line 277 of file ipv6-interface.cc.
References m_linkLocalAddress, and NS_LOG_FUNCTION.
| uint16_t ns3::Ipv6Interface::GetMetric | ( | ) | const |
Get the metric.
Definition at line 149 of file ipv6-interface.cc.
References m_metric, and NS_LOG_FUNCTION.
| uint32_t ns3::Ipv6Interface::GetNAddresses | ( | ) | const |
Get number of addresses on this IPv6 interface.
Definition at line 328 of file ipv6-interface.cc.
References m_addresses, and NS_LOG_FUNCTION.
Referenced by ns3::Icmpv6L4Protocol::FunctionDadTimeout().
Here is the caller graph for this function:| Ptr< NdiscCache > ns3::Ipv6Interface::GetNdiscCache | ( | ) | const |
Definition at line 597 of file ipv6-interface.cc.
References m_ndCache, and NS_LOG_FUNCTION.
| uint16_t ns3::Ipv6Interface::GetReachableTime | ( | ) | const |
Get the reachable time.
Definition at line 544 of file ipv6-interface.cc.
References m_reachableTime, and NS_LOG_FUNCTION.
| uint16_t ns3::Ipv6Interface::GetRetransTimer | ( | ) | const |
Get the retransmission timer.
Definition at line 558 of file ipv6-interface.cc.
References m_retransTimer, and NS_LOG_FUNCTION.
|
static |
Get the type ID.
Definition at line 34 of file ipv6-interface.cc.
References ns3::Object::Object(), m_interfaceStatus, ns3::MakeTraceSourceAccessor(), and ns3::TypeId::SetParent().
Here is the call graph for this function:| bool ns3::Ipv6Interface::IsDown | ( | ) | const |
Is the interface DOWN ?
Definition at line 163 of file ipv6-interface.cc.
References m_ifup, and NS_LOG_FUNCTION.
| bool ns3::Ipv6Interface::IsForwarding | ( | ) | const |
If the interface allows forwarding packets.
Definition at line 202 of file ipv6-interface.cc.
References m_forwarding, and NS_LOG_FUNCTION.
| bool ns3::Ipv6Interface::IsSolicitedMulticastAddress | ( | Ipv6Address | address | ) | const |
Checks if the address is a Solicited Multicast address for this interface.
| address | the address to check. |
Definition at line 286 of file ipv6-interface.cc.
References m_addresses, and NS_LOG_FUNCTION.
| bool ns3::Ipv6Interface::IsUp | ( | ) | const |
Is the interface UP ?
Definition at line 156 of file ipv6-interface.cc.
References m_ifup, and NS_LOG_FUNCTION.
Referenced by Send().
Here is the caller graph for this function:
|
delete |
| Ipv6InterfaceAddress ns3::Ipv6Interface::RemoveAddress | ( | Ipv6Address | address | ) |
Remove the given Ipv6 address from the interface.
| address | The Ipv6 address to remove |
Definition at line 366 of file ipv6-interface.cc.
References ns3::Ipv6Address::GetLoopback(), m_addresses, m_removeAddressCallback, NS_LOG_FUNCTION, and NS_LOG_WARN.
Here is the call graph for this function:| Ipv6InterfaceAddress ns3::Ipv6Interface::RemoveAddress | ( | uint32_t | index | ) |
Remove an address from interface.
| index | index to remove |
Definition at line 335 of file ipv6-interface.cc.
References m_addresses, m_removeAddressCallback, NS_FATAL_ERROR, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::RemoveAddressCallback | ( | Callback< void, Ptr< Ipv6Interface >, Ipv6InterfaceAddress > | removeAddressCallback | ) |
This callback is set when an address is removed from an interface with auto-generated Ndisc cache and it allow the neighbor cache helper to update neighbor's Ndisc cache.
| removeAddressCallback | Callback when remove an address. |
Definition at line 604 of file ipv6-interface.cc.
References m_removeAddressCallback, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::Send | ( | Ptr< Packet > | p, |
| const Ipv6Header & | hdr, | ||
| Ipv6Address | dest ) |
Send a packet through this interface.
| p | packet to send |
| hdr | IPv6 header |
| dest | next hop address of packet. |
Definition at line 413 of file ipv6-interface.cc.
References ns3::Create(), ns3::DynamicCast(), GetDevice(), ns3::Ipv6::GetProtocol(), ns3::Icmpv6L4Protocol::GetStaticProtocolNumber(), ns3::Ipv6Address::IsMulticast(), IsUp(), m_addresses, m_device, m_ndCache, m_node, m_tc, NS_ASSERT, NS_ASSERT_MSG, NS_LOG_FUNCTION, NS_LOG_LOGIC, ns3::NetDevice::PACKET_HOST, ns3::Ipv6L3Protocol::PROT_NUMBER, ns3::TrafficControlLayer::Receive(), and ns3::Simulator::ScheduleNow().
Referenced by ns3::Icmpv6L4Protocol::DoDAD().
Here is the call graph for this function:
Here is the caller graph for this function:| void ns3::Ipv6Interface::SetBaseReachableTime | ( | uint16_t | baseReachableTime | ) |
Set the base reachable time.
| baseReachableTime | the value to set |
Definition at line 523 of file ipv6-interface.cc.
References m_baseReachableTime, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::SetCurHopLimit | ( | uint8_t | curHopLimit | ) |
Set the current hop limit.
| curHopLimit | the value to set |
Definition at line 509 of file ipv6-interface.cc.
References m_curHopLimit, and NS_LOG_FUNCTION.
Set the NetDevice.
| device | NetDevice |
Definition at line 121 of file ipv6-interface.cc.
References m_device, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::SetDown | ( | ) |
Disable this interface.
Definition at line 188 of file ipv6-interface.cc.
References m_addresses, m_device, m_ifup, m_interfaceStatus, m_ndCache, m_node, NS_ASSERT_MSG, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::SetForwarding | ( | bool | forward | ) |
Set forwarding enabled or not.
| forward | forwarding state |
Definition at line 209 of file ipv6-interface.cc.
References m_forwarding, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::SetMetric | ( | uint16_t | metric | ) |
Set the metric.
| metric | configured routing metric (cost) of this interface |
Definition at line 142 of file ipv6-interface.cc.
References m_metric, and NS_LOG_FUNCTION.
Set node associated with interface.
| node | node |
Definition at line 114 of file ipv6-interface.cc.
References m_node, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::SetNsDadUid | ( | Ipv6Address | address, |
| uint32_t | uid ) |
Update NS DAD packet UID of an interface address.
| address | IPv6 address |
| uid | packet UID |
Definition at line 581 of file ipv6-interface.cc.
References m_addresses, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::SetReachableTime | ( | uint16_t | reachableTime | ) |
Set the reachable time.
| reachableTime | value to set |
Definition at line 537 of file ipv6-interface.cc.
References m_reachableTime, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::SetRetransTimer | ( | uint16_t | retransTimer | ) |
Set the retransmission timer.
| retransTimer | value to set |
Definition at line 551 of file ipv6-interface.cc.
References m_retransTimer, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::SetState | ( | Ipv6Address | address, |
| Ipv6InterfaceAddress::State_e | state ) |
Update state of an interface address.
| address | IPv6 address |
| state | new state |
Definition at line 565 of file ipv6-interface.cc.
References m_addresses, and NS_LOG_FUNCTION.
Referenced by ns3::Icmpv6L4Protocol::FunctionDadTimeout().
Here is the caller graph for this function:| void ns3::Ipv6Interface::SetTrafficControl | ( | Ptr< TrafficControlLayer > | tc | ) |
Set the TrafficControlLayer.
| tc | TrafficControlLayer object |
Definition at line 128 of file ipv6-interface.cc.
References m_tc, and NS_LOG_FUNCTION.
| void ns3::Ipv6Interface::SetUp | ( | ) |
Enable this interface.
Definition at line 170 of file ipv6-interface.cc.
References DoSetup(), m_device, m_ifup, m_interfaceStatus, m_node, NS_ASSERT_MSG, and NS_LOG_FUNCTION.
Here is the call graph for this function:
|
private |
add address callback
Definition at line 389 of file ipv6-interface.h.
Referenced by AddAddress(), and AddAddressCallback().
|
private |
The addresses assigned to this interface.
Definition at line 321 of file ipv6-interface.h.
Referenced by AddAddress(), GetAddress(), GetAddressMatchingDestination(), GetNAddresses(), IsSolicitedMulticastAddress(), RemoveAddress(), RemoveAddress(), Send(), SetDown(), SetNsDadUid(), and SetState().
|
private |
Base value used for computing the random reachable time value (in millisecond).
Definition at line 371 of file ipv6-interface.h.
Referenced by Ipv6Interface(), GetBaseReachableTime(), and SetBaseReachableTime().
|
private |
Current hop limit.
Definition at line 366 of file ipv6-interface.h.
Referenced by Ipv6Interface(), GetCurHopLimit(), and SetCurHopLimit().
NetDevice associated with this interface.
Definition at line 351 of file ipv6-interface.h.
Referenced by Ipv6Interface(), AddAddress(), DoDispose(), DoSetup(), GetDevice(), Send(), SetDevice(), SetDown(), and SetUp().
|
private |
Forwarding state.
Definition at line 336 of file ipv6-interface.h.
Referenced by Ipv6Interface(), IsForwarding(), and SetForwarding().
|
private |
The state of this interface.
Definition at line 331 of file ipv6-interface.h.
Referenced by Ipv6Interface(), IsDown(), IsUp(), SetDown(), and SetUp().
|
private |
The trace fired when the interface state changes.
Includes state (true if interface is up) and the interface index.
Definition at line 395 of file ipv6-interface.h.
Referenced by GetTypeId(), SetDown(), and SetUp().
|
private |
The link-local addresses assigned to this interface.
Definition at line 326 of file ipv6-interface.h.
Referenced by DoSetup(), and GetLinkLocalAddress().
|
private |
The metric.
Definition at line 341 of file ipv6-interface.h.
Referenced by Ipv6Interface(), GetMetric(), and SetMetric().
|
private |
Neighbor cache.
Definition at line 361 of file ipv6-interface.h.
Referenced by Ipv6Interface(), DoDispose(), DoSetup(), GetNdiscCache(), Send(), and SetDown().
Node associated with this interface.
Definition at line 346 of file ipv6-interface.h.
Referenced by Ipv6Interface(), AddAddress(), DoDispose(), DoSetup(), Send(), SetDown(), SetNode(), and SetUp().
|
private |
Reachable time (in millisecond).
The time a neighbor is considered reachable after receiving a reachability confirmation.
Definition at line 377 of file ipv6-interface.h.
Referenced by Ipv6Interface(), GetReachableTime(), and SetReachableTime().
|
private |
remove address callback
Definition at line 386 of file ipv6-interface.h.
Referenced by RemoveAddress(), RemoveAddress(), and RemoveAddressCallback().
|
private |
Retransmission timer (in millisecond).
Time between retransmission of NS.
Definition at line 383 of file ipv6-interface.h.
Referenced by Ipv6Interface(), GetRetransTimer(), and SetRetransTimer().
|
private |
TrafficControlLayer associated with this interface.
Definition at line 356 of file ipv6-interface.h.
Referenced by Ipv6Interface(), DoDispose(), Send(), and SetTrafficControl().