build a DpdkNetDevice object attached to a physical network interface More...
#include "dpdk-net-device-helper.h"
Public Member Functions | |
DpdkNetDeviceHelper () | |
Construct a DpdkNetDeviceHelper and initialize DPDK EAL. | |
~DpdkNetDeviceHelper () override | |
void | SetDpdkDriver (std::string dpdkDriver) |
Sets DPDK Driver to bind NIC to. | |
void | SetLCoreList (std::string lCoreList) |
Sets list of logical cores to use. | |
void | SetPmdLibrary (std::string pmdLibrary) |
Sets PMD Library to be used for the NIC. | |
Public Member Functions inherited from ns3::EmuFdNetDeviceHelper | |
EmuFdNetDeviceHelper () | |
Construct a EmuFdNetDeviceHelper. | |
~EmuFdNetDeviceHelper () override | |
std::string | GetDeviceName () |
Get the device name of this device. | |
void | HostQdiscBypass (bool hostQdiscBypass) |
Request host qdisc bypass. | |
void | SetDeviceName (std::string deviceName) |
Set the device name of this device. | |
Public Member Functions inherited from ns3::FdNetDeviceHelper | |
FdNetDeviceHelper () | |
Construct a FdNetDeviceHelper. | |
~FdNetDeviceHelper () override | |
virtual NetDeviceContainer | Install (const NodeContainer &c) const |
This method creates a FdNetDevice and associates it to a node. | |
virtual NetDeviceContainer | Install (Ptr< Node > node) const |
This method creates a FdNetDevice and associates it to a node. | |
virtual NetDeviceContainer | Install (std::string name) const |
This method creates a FdNetDevice and associates it to a node. | |
void | SetAttribute (std::string n1, const AttributeValue &v1) |
void | SetTypeId (std::string type) |
Set the TypeId of the Objects to be created by this helper. | |
Public Member Functions inherited from ns3::PcapHelperForDevice | |
PcapHelperForDevice () | |
Construct a PcapHelperForDevice. | |
virtual | ~PcapHelperForDevice () |
Destroy a PcapHelperForDevice. | |
void | EnablePcap (std::string prefix, NetDeviceContainer d, bool promiscuous=false) |
Enable pcap output on each device in the container which is of the appropriate type. | |
void | EnablePcap (std::string prefix, NodeContainer n, bool promiscuous=false) |
Enable pcap output on each device (which is of the appropriate type) in the nodes provided in the container. | |
void | EnablePcap (std::string prefix, Ptr< NetDevice > nd, bool promiscuous=false, bool explicitFilename=false) |
Enable pcap output the indicated net device. | |
void | EnablePcap (std::string prefix, std::string ndName, bool promiscuous=false, bool explicitFilename=false) |
Enable pcap output the indicated net device using a device previously named using the ns-3 object name service. | |
void | EnablePcap (std::string prefix, uint32_t nodeid, uint32_t deviceid, bool promiscuous=false) |
Enable pcap output on the device specified by a global node-id (of a previously created node) and associated device-id. | |
void | EnablePcapAll (std::string prefix, bool promiscuous=false) |
Enable pcap output on each device (which is of the appropriate type) in the set of all nodes created in the simulation. | |
Public Member Functions inherited from ns3::AsciiTraceHelperForDevice | |
AsciiTraceHelperForDevice () | |
Construct an AsciiTraceHelperForDevice. | |
virtual | ~AsciiTraceHelperForDevice () |
Destroy an AsciiTraceHelperForDevice. | |
void | EnableAscii (Ptr< OutputStreamWrapper > stream, NetDeviceContainer d) |
Enable ascii trace output on each device in the container which is of the appropriate type. | |
void | EnableAscii (Ptr< OutputStreamWrapper > stream, NodeContainer n) |
Enable ascii trace output on each device (which is of the appropriate type) in the nodes provided in the container. | |
void | EnableAscii (Ptr< OutputStreamWrapper > stream, Ptr< NetDevice > nd) |
Enable ascii trace output on the indicated net device. | |
void | EnableAscii (Ptr< OutputStreamWrapper > stream, std::string ndName) |
Enable ascii trace output the indicated net device using a device previously named using the ns-3 object name service. | |
void | EnableAscii (Ptr< OutputStreamWrapper > stream, uint32_t nodeid, uint32_t deviceid) |
Enable ascii trace output on the device specified by a global node-id (of a previously created node) and associated device-id. | |
void | EnableAscii (std::string prefix, NetDeviceContainer d) |
Enable ascii trace output on each device in the container which is of the appropriate type. | |
void | EnableAscii (std::string prefix, NodeContainer n) |
Enable ascii trace output on each device (which is of the appropriate type) in the nodes provided in the container. | |
void | EnableAscii (std::string prefix, Ptr< NetDevice > nd, bool explicitFilename=false) |
Enable ascii trace output on the indicated net device. | |
void | EnableAscii (std::string prefix, std::string ndName, bool explicitFilename=false) |
Enable ascii trace output the indicated net device using a device previously named using the ns-3 object name service. | |
void | EnableAscii (std::string prefix, uint32_t nodeid, uint32_t deviceid, bool explicitFilename) |
Enable ascii trace output on the device specified by a global node-id (of a previously created node) and associated device-id. | |
void | EnableAsciiAll (Ptr< OutputStreamWrapper > stream) |
Enable ascii trace output on each device (which is of the appropriate type) in the set of all nodes created in the simulation. | |
void | EnableAsciiAll (std::string prefix) |
Enable ascii trace output on each device (which is of the appropriate type) in the set of all nodes created in the simulation. | |
Protected Member Functions | |
Ptr< NetDevice > | InstallPriv (Ptr< Node > node) const override |
This method creates an ns3::FdNetDevice attached to a physical network interface. | |
Protected Member Functions inherited from ns3::EmuFdNetDeviceHelper | |
virtual int | CreateFileDescriptor () const |
Call out to a separate process running as suid root in order to get a raw socket. | |
Ptr< NetDevice > | InstallPriv (Ptr< Node > node) const override |
This method creates an ns3::FdNetDevice attached to a physical network interface. | |
virtual void | SetFileDescriptor (Ptr< FdNetDevice > device) const |
Sets a file descriptor on the FileDescriptorNetDevice. | |
Protected Attributes | |
std::string | m_dpdkDriver |
DPDK Driver to bind NIC to. | |
std::string | m_lCoreList |
Logical cores to use. | |
std::string | m_pmdLibrary |
PMD Library to be used for NIC. | |
Protected Attributes inherited from ns3::EmuFdNetDeviceHelper | |
std::string | m_deviceName |
The Unix/Linux name of the underlying device (e.g., eth0) | |
bool | m_hostQdiscBypass |
True if request host qdisc bypass. | |
build a DpdkNetDevice object attached to a physical network interface
Definition at line 23 of file dpdk-net-device-helper.h.
ns3::DpdkNetDeviceHelper::DpdkNetDeviceHelper | ( | ) |
Construct a DpdkNetDeviceHelper and initialize DPDK EAL.
Definition at line 19 of file dpdk-net-device-helper.cc.
References NS_LOG_FUNCTION, and ns3::FdNetDeviceHelper::SetTypeId().
|
inlineoverride |
Definition at line 31 of file dpdk-net-device-helper.h.
|
overrideprotectedvirtual |
This method creates an ns3::FdNetDevice attached to a physical network interface.
node | The node to install the device in |
Reimplemented from ns3::FdNetDeviceHelper.
Definition at line 47 of file dpdk-net-device-helper.cc.
References ns3::DynamicCast(), ns3::FdNetDeviceHelper::InstallPriv(), ns3::EmuFdNetDeviceHelper::m_deviceName, m_dpdkDriver, m_lCoreList, m_pmdLibrary, and NS_LOG_FUNCTION.
void ns3::DpdkNetDeviceHelper::SetDpdkDriver | ( | std::string | dpdkDriver | ) |
Sets DPDK Driver to bind NIC to.
dpdkDriver | The DPDK Driver |
Definition at line 41 of file dpdk-net-device-helper.cc.
References m_dpdkDriver.
void ns3::DpdkNetDeviceHelper::SetLCoreList | ( | std::string | lCoreList | ) |
Sets list of logical cores to use.
lCoreList | Comma separated logical core list (e.g., "0,1") |
Definition at line 29 of file dpdk-net-device-helper.cc.
References m_lCoreList.
void ns3::DpdkNetDeviceHelper::SetPmdLibrary | ( | std::string | pmdLibrary | ) |
Sets PMD Library to be used for the NIC.
pmdLibrary | The PMD Library |
Definition at line 35 of file dpdk-net-device-helper.cc.
References m_pmdLibrary.
|
protected |
DPDK Driver to bind NIC to.
Definition at line 79 of file dpdk-net-device-helper.h.
Referenced by InstallPriv(), and SetDpdkDriver().
|
protected |
Logical cores to use.
Definition at line 69 of file dpdk-net-device-helper.h.
Referenced by InstallPriv(), and SetLCoreList().
|
protected |
PMD Library to be used for NIC.
Definition at line 74 of file dpdk-net-device-helper.h.
Referenced by InstallPriv(), and SetPmdLibrary().