build a set of FdNetDevice objects attached to a physical network interface More...
#include "emu-fd-net-device-helper.h"
Inheritance diagram for ns3::EmuFdNetDeviceHelper:
Collaboration diagram for ns3::EmuFdNetDeviceHelper:Public Member Functions | |
| 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 | |
| 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_deviceName |
| The Unix/Linux name of the underlying device (e.g., eth0) | |
| bool | m_hostQdiscBypass |
| True if request host qdisc bypass. | |
build a set of FdNetDevice objects attached to a physical network interface
Definition at line 30 of file emu-fd-net-device-helper.h.
| ns3::EmuFdNetDeviceHelper::EmuFdNetDeviceHelper | ( | ) |
Construct a EmuFdNetDeviceHelper.
Definition at line 49 of file emu-fd-net-device-helper.cc.
References m_deviceName, and m_hostQdiscBypass.
|
inlineoverride |
Definition at line 38 of file emu-fd-net-device-helper.h.
|
protectedvirtual |
Call out to a separate process running as suid root in order to get a raw socket.
We do this to avoid having the entire simulation running as root.
Reimplemented in ns3::TapFdNetDeviceHelper.
Definition at line 210 of file emu-fd-net-device-helper.cc.
References ns3::BufferToString(), EMU_MAGIC, NS_ASSERT_MSG, NS_FATAL_ERROR, NS_LOG_DEBUG, NS_LOG_FUNCTION, and NS_LOG_INFO.
Referenced by SetFileDescriptor().
Here is the call graph for this function:
Here is the caller graph for this function:| std::string ns3::EmuFdNetDeviceHelper::GetDeviceName | ( | ) |
Get the device name of this device.
Definition at line 68 of file emu-fd-net-device-helper.cc.
References m_deviceName.
| void ns3::EmuFdNetDeviceHelper::HostQdiscBypass | ( | bool | hostQdiscBypass | ) |
Request host qdisc bypass.
| hostQdiscBypass | to enable host qdisc bypass |
Definition at line 62 of file emu-fd-net-device-helper.cc.
References m_hostQdiscBypass.
|
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.
Reimplemented in ns3::TapFdNetDeviceHelper.
Definition at line 74 of file emu-fd-net-device-helper.cc.
References ns3::FdNetDeviceHelper::InstallPriv(), and SetFileDescriptor().
Here is the call graph for this function:| void ns3::EmuFdNetDeviceHelper::SetDeviceName | ( | std::string | deviceName | ) |
Set the device name of this device.
| deviceName | The device name of this device. |
Definition at line 56 of file emu-fd-net-device-helper.cc.
References m_deviceName.
Referenced by ns3::EmuEpcHelper::AddEnb(), and ns3::EmuEpcHelper::NotifyConstructionCompleted().
Here is the caller graph for this function:
|
protectedvirtual |
Sets a file descriptor on the FileDescriptorNetDevice.
| device | the device to install the file descriptor in |
Reimplemented in ns3::TapFdNetDeviceHelper.
Definition at line 83 of file emu-fd-net-device-helper.cc.
References CreateFileDescriptor(), m_deviceName, m_hostQdiscBypass, NS_FATAL_ERROR, NS_LOG_ERROR, and NS_LOG_LOGIC.
Referenced by InstallPriv().
Here is the call graph for this function:
Here is the caller graph for this function:
|
protected |
The Unix/Linux name of the underlying device (e.g., eth0)
Definition at line 88 of file emu-fd-net-device-helper.h.
Referenced by EmuFdNetDeviceHelper(), ns3::TapFdNetDeviceHelper::TapFdNetDeviceHelper(), ns3::TapFdNetDeviceHelper::CreateFileDescriptor(), GetDeviceName(), ns3::DpdkNetDeviceHelper::InstallPriv(), SetDeviceName(), and SetFileDescriptor().
|
protected |
True if request host qdisc bypass.
Definition at line 89 of file emu-fd-net-device-helper.h.
Referenced by EmuFdNetDeviceHelper(), HostQdiscBypass(), and SetFileDescriptor().