IPv4 route cache entry (similar to Linux struct rtable) More...
#include "ipv4-route.h"
Public Member Functions | |
Ipv4Route () | |
Ipv4Address | GetDestination (void) const |
Ipv4Address | GetGateway (void) const |
Ptr< NetDevice > | GetOutputDevice (void) const |
Ipv4Address | GetSource (void) const |
void | SetDestination (Ipv4Address dest) |
void | SetGateway (Ipv4Address gw) |
void | SetOutputDevice (Ptr< NetDevice > outputDevice) |
Equivalent in Linux to dst_entry.dev. More... | |
void | SetSource (Ipv4Address src) |
Public Member Functions inherited from ns3::SimpleRefCount< Ipv4Route > | |
SimpleRefCount () | |
Default constructor. More... | |
SimpleRefCount (const SimpleRefCount &o[[maybe_unused]]) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= ([[maybe_unused]] const SimpleRefCount &o) |
Assignment operator. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
Private Attributes | |
Ipv4Address | m_dest |
Destination address. More... | |
Ipv4Address | m_gateway |
Gateway address. More... | |
Ptr< NetDevice > | m_outputDevice |
Output device. More... | |
Ipv4Address | m_source |
Source address. More... | |
IPv4 route cache entry (similar to Linux struct rtable)
This is a reference counted object. In the future, we will add other entries from struct dst_entry, struct rtable, and struct dst_ops as needed.
Definition at line 41 of file ipv4-route.h.
ns3::Ipv4Route::Ipv4Route | ( | ) |
Definition at line 29 of file ipv4-route.cc.
References NS_LOG_FUNCTION.
Ipv4Address ns3::Ipv4Route::GetDestination | ( | void | ) | const |
Definition at line 42 of file ipv4-route.cc.
References m_dest, and NS_LOG_FUNCTION.
Referenced by ns3::operator<<().
Ipv4Address ns3::Ipv4Route::GetGateway | ( | void | ) | const |
Definition at line 70 of file ipv4-route.cc.
References m_gateway, and NS_LOG_FUNCTION.
Referenced by ns3::operator<<().
Definition at line 84 of file ipv4-route.cc.
References m_outputDevice, and NS_LOG_FUNCTION.
Ipv4Address ns3::Ipv4Route::GetSource | ( | void | ) | const |
Definition at line 56 of file ipv4-route.cc.
References m_source, and NS_LOG_FUNCTION.
Referenced by ns3::operator<<().
void ns3::Ipv4Route::SetDestination | ( | Ipv4Address | dest | ) |
dest | Destination Ipv4Address |
Definition at line 35 of file ipv4-route.cc.
References m_dest, and NS_LOG_FUNCTION.
void ns3::Ipv4Route::SetGateway | ( | Ipv4Address | gw | ) |
gw | Gateway (next hop) Ipv4Address |
Definition at line 63 of file ipv4-route.cc.
References m_gateway, and NS_LOG_FUNCTION.
Equivalent in Linux to dst_entry.dev.
outputDevice | pointer to NetDevice for outgoing packets |
Definition at line 77 of file ipv4-route.cc.
References m_outputDevice, and NS_LOG_FUNCTION.
void ns3::Ipv4Route::SetSource | ( | Ipv4Address | src | ) |
src | Source Ipv4Address |
Definition at line 49 of file ipv4-route.cc.
References m_source, and NS_LOG_FUNCTION.
|
private |
Destination address.
Definition at line 91 of file ipv4-route.h.
Referenced by GetDestination(), and SetDestination().
|
private |
Gateway address.
Definition at line 93 of file ipv4-route.h.
Referenced by GetGateway(), and SetGateway().
Output device.
Definition at line 94 of file ipv4-route.h.
Referenced by GetOutputDevice(), and SetOutputDevice().
|
private |
Source address.
Definition at line 92 of file ipv4-route.h.
Referenced by GetSource(), and SetSource().