|
ns-3
|
helps to manage and create WimaxNetDevice objects More...
#include <wimax-helper.h>


Public Types | |
| enum | NetDeviceType { DEVICE_TYPE_SUBSCRIBER_STATION, DEVICE_TYPE_BASE_STATION } |
| enum | PhyType { SIMPLE_PHY_TYPE_OFDM } |
| enum | SchedulerType { SCHED_TYPE_SIMPLE, SCHED_TYPE_RTPS, SCHED_TYPE_MBQOS } |
Public Member Functions | |
| WimaxHelper (void) | |
| Create a Wimax helper in an empty state. | |
| Ptr< WimaxPhy > | CreatePhy (PhyType phyType) |
| Ptr< UplinkScheduler > | CreateUplinkScheduler (SchedulerType schedulerType) |
| Ptr< BSScheduler > | CreateBSScheduler (SchedulerType schedulerType) |
| NetDeviceContainer | Install (NodeContainer c, NetDeviceType type, PhyType phyType, SchedulerType schedulerType) |
| NetDeviceContainer | Install (NodeContainer c, NetDeviceType deviceType, PhyType phyType, Ptr< WimaxChannel > channel, SchedulerType schedulerType) |
| NetDeviceContainer | Install (NodeContainer c, NetDeviceType deviceType, PhyType phyType, SchedulerType schedulerType, double frameDuration) |
| void | SetPropagationLossModel (SimpleOfdmWimaxChannel::PropModel propagationModel) |
| Set the propagation and loss model of the channel. By default the channel uses a COST231 propagation and loss model. | |
| Ptr< WimaxPhy > | CreatePhyWithoutChannel (PhyType phyType) |
| Ptr< WimaxPhy > | CreatePhyWithoutChannel (PhyType phyType, char *SNRTraceFilePath, bool activateLoss) |
| Ptr< WimaxPhy > | CreatePhy (PhyType phyType, char *SNRTraceFilePath, bool activateLoss) |
| Ptr< WimaxNetDevice > | Install (Ptr< Node > node, NetDeviceType deviceType, PhyType phyType, Ptr< WimaxChannel > channel, SchedulerType schedulerType) |
| ServiceFlow | CreateServiceFlow (ServiceFlow::Direction direction, ServiceFlow::SchedulingType schedulinType, IpcsClassifierRecord classifier) |
| Creates a transport service flow. | |
Public Member Functions inherited from ns3::PcapHelperForDevice | |
| PcapHelperForDevice () | |
| Construct a PcapHelperForDevice. | |
| virtual | ~PcapHelperForDevice () |
| Destroy a PcapHelperForDevice. | |
| 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, 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, 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 (std::string prefix, Ptr< NetDevice > nd, bool explicitFilename=false) |
| Enable ascii trace output on the indicated net device. | |
| void | EnableAscii (Ptr< OutputStreamWrapper > stream, Ptr< NetDevice > nd) |
| 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 (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 (std::string prefix, NetDeviceContainer d) |
| Enable ascii trace output on each device in the container which is of the appropriate type. | |
| 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 (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 (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 | 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. | |
| 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 | 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 | 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. | |
Static Public Member Functions | |
| static void | EnableAsciiForConnection (Ptr< OutputStreamWrapper > oss, uint32_t nodeid, uint32_t deviceid, char *netdevice, char *connection) |
| Enable ascii trace output on the indicated net device for a given connection. | |
| static void | EnableLogComponents (void) |
helps to manage and create WimaxNetDevice objects
This class can help to create a large set of similar WimaxNetDevice objects and to configure their attributes during creation.
WiMAX Physical layer WiMAX Physical layers with different levels of detail
Scheduler Type Different implementations of uplink/downlink scheduler
| Ptr< BSScheduler > ns3::WimaxHelper::CreateBSScheduler | ( | SchedulerType | schedulerType | ) |
| schedulerType | Scheduling mechanism |
Creates a downlink scheduler to be used by base station according to selected scheduling mechanism.
References NS_FATAL_ERROR, SCHED_TYPE_MBQOS, SCHED_TYPE_RTPS, and SCHED_TYPE_SIMPLE.
Referenced by Install().
| phyType | WiMAX Physical layer type |
Creates a physical layer object to be used in simulation.
References NS_FATAL_ERROR.
Referenced by Install().
| Ptr< WimaxPhy > ns3::WimaxHelper::CreatePhy | ( | PhyType | phyType, |
| char * | SNRTraceFilePath, | ||
| bool | activateLoss | ||
| ) |
| phyType | WiMAX Physical layer type |
| SNRTraceFilePath | the path to the repository containing the SNR traces files |
| activateLoss | set to 1 if you want ton activate losses 0 otherwise |
Creates a physical layer
References NS_FATAL_ERROR.
| phyType | WiMAX Physical layer type |
Creates a physical layer without a channel
References NS_FATAL_ERROR.
Referenced by Install().
| Ptr< WimaxPhy > ns3::WimaxHelper::CreatePhyWithoutChannel | ( | PhyType | phyType, |
| char * | SNRTraceFilePath, | ||
| bool | activateLoss | ||
| ) |
| phyType | WiMAX Physical layer type |
| SNRTraceFilePath | of the repository containing the SNR traces files |
| activateLoss | set to 1 to activate losses 0 otherwise |
Creates a physical layer without creating a channel
References NS_FATAL_ERROR.
| ServiceFlow ns3::WimaxHelper::CreateServiceFlow | ( | ServiceFlow::Direction | direction, |
| ServiceFlow::SchedulingType | schedulinType, | ||
| IpcsClassifierRecord | classifier | ||
| ) |
Creates a transport service flow.
| direction | the direction of the service flow: UP or DOWN. |
| schedulinType | The service scheduling type to be used: UGS, RTPS, NRTPS, BE |
| classifier | The classifier to be used for this service flow |
| Ptr< UplinkScheduler > ns3::WimaxHelper::CreateUplinkScheduler | ( | SchedulerType | schedulerType | ) |
| schedulerType | Scheduling mechanism |
Creates a uplink scheduler to be used by base station according to selected scheduling mechanism.
References NS_FATAL_ERROR, SCHED_TYPE_MBQOS, SCHED_TYPE_RTPS, SCHED_TYPE_SIMPLE, and ns3::Seconds().
Referenced by Install().
|
static |
Enable ascii trace output on the indicated net device for a given connection.
| oss | The output stream object to use when logging ascii traces. |
| nodeid | the id of the node for which you want to enable tracing. |
| deviceid | the id of the net device for which you want to enable tracing. |
| netdevice | the type of net device for which you want to enable tracing (SubscriberStationNetDevice, BaseStationNetDevice or WimaxNetDevice) |
| connection | the connection for which you want to enable tracing (InitialRangingConnection, BroadcastConnection, BasicConnection, PrimaryConnection). |
References ns3::Config::Connect().
|
static |
Helper to enable all WimaxNetDevice log components with one statement
References ns3::LogComponentEnable().
| NetDeviceContainer ns3::WimaxHelper::Install | ( | NodeContainer | c, |
| NetDeviceType | type, | ||
| PhyType | phyType, | ||
| SchedulerType | schedulerType | ||
| ) |
| c | a set of nodes |
| type | device type to create |
| phyType | a phy to use |
| schedulerType | the type of the scheduling algorithm to install |
For each of the input nodes, a new WiMAX net device (either ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice depending on the type parameter) is attached to the shared input channel.
References ns3::NetDeviceContainer::Add(), ns3::Node::AddDevice(), ns3::Mac48Address::Allocate(), ns3::NodeContainer::Begin(), CreateBSScheduler(), CreatePhy(), CreateUplinkScheduler(), DEVICE_TYPE_BASE_STATION, ns3::NodeContainer::End(), ns3::WimaxNetDevice::SetAddress(), ns3::WimaxPhy::SetDevice(), and ns3::WimaxNetDevice::Start().
| NetDeviceContainer ns3::WimaxHelper::Install | ( | NodeContainer | c, |
| NetDeviceType | deviceType, | ||
| PhyType | phyType, | ||
| Ptr< WimaxChannel > | channel, | ||
| SchedulerType | schedulerType | ||
| ) |
| c | A set of nodes. |
| deviceType | Device type to create. |
| phyType | PHY type to create. |
| channel | A channel to use. |
| schedulerType | The scheduling mechanism. |
For each of the input nodes, a new WiMAX net device (either ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice depending on the type parameter) is attached to the shared input channel.
References ns3::NetDeviceContainer::Add(), ns3::Node::AddDevice(), ns3::Mac48Address::Allocate(), ns3::NodeContainer::Begin(), CreateBSScheduler(), CreatePhyWithoutChannel(), CreateUplinkScheduler(), DEVICE_TYPE_BASE_STATION, ns3::NodeContainer::End(), ns3::WimaxNetDevice::SetAddress(), ns3::WimaxPhy::SetDevice(), and ns3::WimaxNetDevice::Start().
| NetDeviceContainer ns3::WimaxHelper::Install | ( | NodeContainer | c, |
| NetDeviceType | deviceType, | ||
| PhyType | phyType, | ||
| SchedulerType | schedulerType, | ||
| double | frameDuration | ||
| ) |
| c | A set of nodes. |
| deviceType | Device type to create. |
| phyType | PHY type to create. |
| schedulerType | The scheduling mechanism. |
| frameDuration | the farme duration in seconds |
For each of the input nodes, a new WiMAX net device (either ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice depending on the type parameter) is attached to the shared input channel.
References ns3::NetDeviceContainer::Add(), ns3::Node::AddDevice(), ns3::Mac48Address::Allocate(), ns3::NodeContainer::Begin(), CreateBSScheduler(), CreatePhy(), CreateUplinkScheduler(), DEVICE_TYPE_BASE_STATION, ns3::NodeContainer::End(), ns3::Seconds(), ns3::WimaxNetDevice::SetAddress(), ns3::WimaxPhy::SetDevice(), ns3::WimaxPhy::SetFrameDuration(), and ns3::WimaxNetDevice::Start().
| Ptr< WimaxNetDevice > ns3::WimaxHelper::Install | ( | Ptr< Node > | node, |
| NetDeviceType | deviceType, | ||
| PhyType | phyType, | ||
| Ptr< WimaxChannel > | channel, | ||
| SchedulerType | schedulerType | ||
| ) |
| node | Node to be installed. |
| deviceType | Device type to create. |
| phyType | PHY type to create. |
| channel | A channel to use. |
| schedulerType | The scheduling mechanism to install on the device. |
For each of the input nodes, a new WiMAX net device (either ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice depending on the type parameter) is attached to the shared input channel.
References ns3::Node::AddDevice(), ns3::Mac48Address::Allocate(), CreateBSScheduler(), CreatePhyWithoutChannel(), CreateUplinkScheduler(), DEVICE_TYPE_BASE_STATION, ns3::WimaxNetDevice::SetAddress(), ns3::WimaxPhy::SetDevice(), and ns3::WimaxNetDevice::Start().
| void ns3::WimaxHelper::SetPropagationLossModel | ( | SimpleOfdmWimaxChannel::PropModel | propagationModel | ) |
Set the propagation and loss model of the channel. By default the channel uses a COST231 propagation and loss model.
| propagationModel | The propagation and loss model to set |
References ns3::Object::GetObject().