Implementation of layer-2 (Ethernet) Ndn face. More...
#include <ndn-net-device-face.h>
Public Member Functions | |
NetDeviceFace (Ptr< Node > node, const Ptr< NetDevice > &netDevice) | |
Constructor. More... | |
virtual void | RegisterProtocolHandlers (const InterestHandler &interestHandler, const DataHandler &dataHandler) |
Register callback to call when new packet arrives on the face. More... | |
virtual void | UnRegisterProtocolHandlers () |
Un-Register callback to call when new packet arrives on the face. More... | |
virtual std::ostream & | Print (std::ostream &os) const |
Print out name of the NdnFace to the stream. | |
Ptr< NetDevice > | GetNetDevice () const |
Get NetDevice associated with the face. More... | |
Public Member Functions inherited from ns3::ndn::Face | |
Face (Ptr< Node > node) | |
Default constructor. More... | |
Ptr< Node > | GetNode () const |
Get node to which this face is associated. | |
virtual bool | SendInterest (Ptr< const Interest > interest) |
Send out interest through the face. More... | |
virtual bool | SendData (Ptr< const Data > data) |
Send out Dat packet through the face. More... | |
virtual bool | ReceiveInterest (Ptr< Interest > interest) |
Receive interest from application or another node and forward it up to the NDN stack. More... | |
virtual bool | ReceiveData (Ptr< Data > data) |
Receive Data packet from application or another node and forward it up to the NDN stack. More... | |
virtual void | SetMetric (uint16_t metric) |
Assign routing/forwarding metric with face. More... | |
virtual uint16_t | GetMetric (void) const |
Get routing/forwarding metric assigned to the face. More... | |
void | SetUp (bool up=true) |
These are face states and may be distinct from actual lower-layer device states, such as found in real implementations (where the device may be down but ndn face state is still up). More... | |
bool | IsUp () const |
Returns true if this face is enabled, false otherwise. | |
uint32_t | GetFlags () const |
Get face flags. More... | |
void | SetId (uint32_t id) |
Set face Id. More... | |
uint32_t | GetId () const |
Get face Id. More... | |
bool | operator== (const Face &face) const |
Compare two faces. More... | |
bool | operator!= (const Face &face) const |
Compare two faces. More... | |
bool | operator< (const Face &face) const |
Compare two faces. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Static Public Member Functions inherited from ns3::ndn::Face | |
static TypeId | GetTypeId () |
Protected Member Functions | |
virtual bool | Send (Ptr< Packet > p) |
Send packet down to the stack (towards app or network) | |
Protected Member Functions inherited from ns3::ndn::Face | |
virtual bool | Receive (Ptr< const Packet > p) |
Send packet up to the stack (towards forwarding strategy) | |
void | SetFlags (uint32_t flags) |
Set face flags. | |
Additional Inherited Members | |
Public Types inherited from ns3::ndn::Face | |
enum | Flags { APPLICATION = 1 } |
List of currently defined face flags. More... | |
typedef Callback< void, Ptr < Face >, Ptr< Interest > > | InterestHandler |
NDN protocol handlers. More... | |
typedef Callback< void, Ptr < Face >, Ptr< Data > > | DataHandler |
Protected Attributes inherited from ns3::ndn::Face | |
Ptr< Node > | m_node |
Smart pointer to Node. | |
Implementation of layer-2 (Ethernet) Ndn face.
This class defines basic functionality of Ndn face. Face is core component responsible for actual delivery of data packet to and from Ndn stack
NdnNetDevice face is permanently associated with one NetDevice object and this object cannot be changed for the lifetime of the face
Doxygen introspection did not find any typical Config paths.
No Attributes are defined for this type.
No TraceSources are defined for this type.
Definition at line 44 of file ndn-net-device-face.h.
ns3::ndn::NetDeviceFace::NetDeviceFace | ( | Ptr< Node > | node, |
const Ptr< NetDevice > & | netDevice | ||
) |
Constructor.
By default, Ndn face are created in the "down" state.
node | Node associated with the face |
netDevice | a smart pointer to NetDevice object to which this face will be associate |
Before becoming useable, the user must invoke SetUp on the face
Definition at line 57 of file ndn-net-device-face.cc.
References ns3::ndn::Face::SetMetric().
Ptr< NetDevice > ns3::ndn::NetDeviceFace::GetNetDevice | ( | ) | const |
Get NetDevice associated with the face.
Definition at line 79 of file ndn-net-device-face.cc.
Referenced by ns3::ndn::LinkControlHelper::FailLink(), and ns3::ndn::LinkControlHelper::UpLink().
|
virtual |
Register callback to call when new packet arrives on the face.
This method should call protocol-dependent registration function
Reimplemented from ns3::ndn::Face.
Definition at line 85 of file ndn-net-device-face.cc.
References ns3::ndn::L3Protocol::ETHERNET_FRAME_TYPE, ns3::ndn::Face::m_node, and ns3::ndn::Face::RegisterProtocolHandlers().
|
virtual |
Un-Register callback to call when new packet arrives on the face.
This method should call protocol-dependent registration function
Reimplemented from ns3::ndn::Face.
Definition at line 96 of file ndn-net-device-face.cc.
References ns3::ndn::Face::m_node, and ns3::ndn::Face::UnRegisterProtocolHandlers().