NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.5: NDN, CCN, CCNx, content centric networks
API Documentation
ns3::ndn::NetDeviceTransport Class Reference

ndnSIM-specific transport More...

#include <ndn-net-device-transport.hpp>

Inheritance diagram for ns3::ndn::NetDeviceTransport:
Collaboration diagram for ns3::ndn::NetDeviceTransport:

Public Member Functions

 NetDeviceTransport (Ptr< Node > node, const Ptr< NetDevice > &netDevice, const std::string &localUri, const std::string &remoteUri, ::ndn::nfd::FaceScope scope=::ndn::nfd::FACE_SCOPE_NON_LOCAL, ::ndn::nfd::FacePersistency persistency=::ndn::nfd::FACE_PERSISTENCY_PERSISTENT, ::ndn::nfd::LinkType linkType=::ndn::nfd::LINK_TYPE_POINT_TO_POINT)
 
 ~NetDeviceTransport ()
 
Ptr< NetDevice > GetNetDevice () const
 
virtual ssize_t getSendQueueLength () final
 
- Public Member Functions inherited from nfd::face::Transport
 Transport ()
 Default constructor. More...
 
virtual ~Transport ()
 
void setFaceAndLinkService (Face &face, LinkService &service)
 set Face and LinkService for Transport More...
 
const Face * getFace () const
 
const LinkService * getLinkService () const
 
LinkService * getLinkService ()
 
virtual const Counters & getCounters () const
 
void close ()
 Request the transport to be closed. More...
 
void send (const Block &packet)
 Send a link-layer packet. More...
 
FaceUri getLocalUri () const
 
FaceUri getRemoteUri () const
 
ndn::nfd::FaceScope getScope () const
 
ndn::nfd::FacePersistency getPersistency () const
 
bool canChangePersistencyTo (ndn::nfd::FacePersistency newPersistency) const
 check whether the face persistency can be changed to newPersistency More...
 
void setPersistency (ndn::nfd::FacePersistency newPersistency)
 changes face persistency setting More...
 
ndn::nfd::LinkType getLinkType () const
 
ssize_t getMtu () const
 
ssize_t getSendQueueCapacity () const
 
TransportState getState () const
 
time::steady_clock::TimePoint getExpirationTime () const
 

Additional Inherited Members

- Public Types inherited from nfd::face::Transport
using Counters = TransportCounters
 Counters provided by a transport. More...
 
- Public Attributes inherited from nfd::face::Transport
signal::Signal< Transport, TransportState, TransportState > afterStateChange
 signals when transport state changes More...
 
- Protected Member Functions inherited from nfd::face::Transport
void receive (const Block &packet, const EndpointId &endpoint=0)
 Pass a received link-layer packet to the upper layer for further processing. More...
 
void setLocalUri (const FaceUri &uri)
 
void setRemoteUri (const FaceUri &uri)
 
void setScope (ndn::nfd::FaceScope scope)
 
void setLinkType (ndn::nfd::LinkType linkType)
 
void setMtu (ssize_t mtu)
 
void setSendQueueCapacity (ssize_t sendQueueCapacity)
 
void setState (TransportState newState)
 set transport state More...
 
void setExpirationTime (const time::steady_clock::TimePoint &expirationTime)
 
virtual bool canChangePersistencyToImpl (ndn::nfd::FacePersistency newPersistency) const
 invoked by canChangePersistencyTo to perform the check More...
 
virtual void afterChangePersistency (ndn::nfd::FacePersistency oldPersistency)
 invoked after the persistency has been changed More...
 
- Protected Attributes inherited from nfd::face::TransportCounters
PacketCounter nInPackets
 count of incoming packets More...
 
PacketCounter nOutPackets
 count of outgoing packets More...
 
ByteCounter nInBytes
 total incoming bytes More...
 
ByteCounter nOutBytes
 total outgoing bytes More...
 

Detailed Description

ndnSIM-specific transport

Definition at line 42 of file ndn-net-device-transport.hpp.

Constructor & Destructor Documentation

◆ NetDeviceTransport()

◆ ~NetDeviceTransport()

ns3::ndn::NetDeviceTransport::~NetDeviceTransport ( )

Definition at line 80 of file ndn-net-device-transport.cpp.

Member Function Documentation

◆ GetNetDevice()

Ptr< NetDevice > ns3::ndn::NetDeviceTransport::GetNetDevice ( ) const

Definition at line 145 of file ndn-net-device-transport.cpp.

◆ getSendQueueLength()

ssize_t ns3::ndn::NetDeviceTransport::getSendQueueLength ( )
finalvirtual
Returns
current send queue length of the transport (in octets)
Return values
QUEUE_UNSUPPORTEDtransport does not support queue length retrieval
QUEUE_ERRORtransport was unable to retrieve the queue length

Reimplemented from nfd::face::Transport.

Definition at line 86 of file ndn-net-device-transport.cpp.

References nfd::face::CLOSED, ns3::ndn::L3Protocol::ETHERNET_FRAME_TYPE, ns3::ndn::BlockHeader::getBlock(), nfd::face::Transport::getLocalUri(), nonstd::optional_lite::std11::move(), nfd::face::QUEUE_UNSUPPORTED, nfd::face::Transport::receive(), and nfd::face::Transport::setState().


The documentation for this class was generated from the following files: