A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
service-flow.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2007,2008, 2009 INRIA, UDcast
3 *
4 * SPDX-License-Identifier: GPL-2.0-only
5 *
6 * Author: Jahanzeb Farooq <jahanzeb.farooq@sophia.inria.fr>
7 * Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
8 */
9
10#ifndef SERVICE_FLOW_H
11#define SERVICE_FLOW_H
12
13#include "cs-parameters.h"
14#include "wimax-connection.h"
15#include "wimax-mac-header.h"
16#include "wimax-phy.h"
17
18#include <cstdint>
19
20namespace ns3
21{
22
23class ServiceFlowRecord;
24class WimaxConnection;
25class WimaxMacQueue;
26
27/**
28 * \ingroup wimax
29 * This class implements service flows as described by the IEEE-802.16 standard
30 */
32{
33 public:
34 /// Direction enumeration
40
41 /// Type enumeration
48
49 /// section 11.13.11 Service flow scheduling type, page 701
60
61 /// section 11.13.19.2 CS parameter encoding rules, page 707
63 {
64 ATM = 99,
65 IPV4 = 100,
66 IPV6 = 101,
67 ETHERNET = 102,
68 VLAN = 103,
72 IPV6_OVER_VLAN = 107
73 };
74
75 /// Modulation type enumeration, Table 356 and 362
86
87 /**
88 * \brief creates a TLV from this service flow
89 * \return the created tlv
90 */
91 Tlv ToTlv() const;
92 /**
93 * \brief creates a service flow from a TLV
94 * \param tlv the tlv from which the service flow will be created
95 */
96 ServiceFlow(Tlv tlv);
97 /**
98 * \brief check classifier match.
99 * \param srcAddress the source ip address
100 * \param dstAddress the destination ip address
101 * \param srcPort the source port
102 * \param dstPort the destination port
103 * \param proto the layer 4 protocol
104 * \return true if the passed parameters match the classifier of the service flow, false
105 * otherwise
106 */
107 bool CheckClassifierMatch(Ipv4Address srcAddress,
108 Ipv4Address dstAddress,
109 uint16_t srcPort,
110 uint16_t dstPort,
111 uint8_t proto) const;
112 /**
113 * Default constructor.
114 */
115 ServiceFlow();
116 /**
117 * Constructor
118 *
119 * \param direction the direction
120 */
121 ServiceFlow(Direction direction);
122 /**
123 * Constructor
124 *
125 * \param sf service flow
126 */
127 ServiceFlow(const ServiceFlow& sf);
128 /**
129 * Constructor
130 *
131 * \param sfid the SFID
132 * \param direction the direction
133 * \param connection the connection object
134 */
135 ServiceFlow(uint32_t sfid, Direction direction, Ptr<WimaxConnection> connection);
136 /**
137 * Destructor.
138 */
139 ~ServiceFlow();
140 /**
141 * assignment operator
142 * \param o the service flow to assign
143 * \returns the service flow
144 */
146
147 /**
148 * Initialize values.
149 */
150 void InitValues();
151 /**
152 * Set direction
153 * \param direction the direction value
154 */
155 void SetDirection(Direction direction);
156 /**
157 * Get direction
158 * \returns the direction
159 */
160 Direction GetDirection() const;
161 /**
162 * Copy parameters from another service flow
163 * \param sf the service flow
164 */
166
167 /**
168 * Set type of service flow
169 * \param type the type value
170 */
171 void SetType(Type type);
172 /**
173 * Get type of service flow
174 * \returns the type
175 */
176 Type GetType() const;
177 /**
178 * Set connection
179 * \param connection the connection
180 */
181 void SetConnection(Ptr<WimaxConnection> connection);
182 /**
183 * Can return a null connection is this service flow has not
184 * been associated yet to a connection.
185 * \returns pointer to the WimaxConnection
186 */
188
189 /**
190 * Set is enabled flag
191 * \param isEnabled is enabled flag
192 */
193 void SetIsEnabled(bool isEnabled);
194 /**
195 * Get is enabled flag
196 * \returns is enabled
197 */
198 bool GetIsEnabled() const;
199
200 /**
201 * Set service flow record
202 * \param record pointer to the service flow record
203 */
204 void SetRecord(ServiceFlowRecord* record);
205 /**
206 * Get service flow record
207 * \returns pointer to the service flow record
208 */
210
211 // wrapper functions
212 /**
213 * Get pointer to queue
214 * \returns pointer to the wimax mac queue
215 */
217 /**
218 * Get scheduling type
219 * \returns the scheduling type
220 */
222 /**
223 * Check if packets are present
224 * \returns true if there are packets
225 */
226 bool HasPackets() const;
227 /**
228 * Check if packets of particular type are present
229 * \param packetType the packet type to select
230 * \returns true if there are packets of the packet type
231 */
232 bool HasPackets(MacHeaderType::HeaderType packetType) const;
233
234 /**
235 * Shall be called only by BS.
236 */
237 void CleanUpQueue();
238
239 /**
240 * Print QoS parameters.
241 */
242 void PrintQoSParameters() const;
243
244 /**
245 * Get scheduling type string
246 * \returns the name of the scheduling type
247 */
248 char* GetSchedulingTypeStr() const;
249
250 /**
251 * Get SFID
252 * \returns the SFID
253 */
254 uint32_t GetSfid() const;
255 /**
256 * Get CID
257 * \returns the CID
258 */
259 uint16_t GetCid() const;
260 /**
261 * Get service class name
262 * \returns the service class name
263 */
264 std::string GetServiceClassName() const;
265 /**
266 * Get QOS parameter set type
267 * \returns the QOS parameter set type
268 */
269 uint8_t GetQosParamSetType() const;
270 /**
271 * Get traffic priority
272 * \returns the traffic priority
273 */
274 uint8_t GetTrafficPriority() const;
275 /**
276 * Get max sustained traffic rate
277 * \returns the maximum sustained traffic rate
278 */
280 /**
281 * Get max traffic burst
282 * \returns the maximum traffic burst
283 */
285 /**
286 * Get minimum reserved traffic rate
287 * \returns the minimum reserved traffic rate
288 */
290 /**
291 * Get minimum tolerable traffic rate
292 * \returns the minimum tolerable traffic rate
293 */
295 /**
296 * Get service scheduling type
297 * \returns the scheduling type
298 */
300 /**
301 * Get request transmission policy
302 * \returns the request transmission policy
303 */
305 /**
306 * Get tolerated jitter
307 * \returns the tolerated jitter
308 */
310 /**
311 * Get maximum latency
312 * \returns the maximum latency
313 */
315 /**
316 * Get fixed versus variable SDU indicator
317 * \returns the fixed vs variable SDU indicator
318 */
320 /**
321 * Get SDU size
322 * \returns the SDU size
323 */
324 uint8_t GetSduSize() const;
325 /**
326 * Get target SAID
327 * \returns the target SAID
328 */
329 uint16_t GetTargetSAID() const;
330 /**
331 * Get ARQ enable
332 * \returns the ARQ enable
333 */
334 uint8_t GetArqEnable() const;
335 /**
336 * Get ARQ retry timeout transmit
337 * \returns the ARQ retry timeout
338 */
339 uint16_t GetArqWindowSize() const;
340 /**
341 * Get ARQ retry timeout transmit
342 * \returns the ARQ retry timeout transmit
343 */
344 uint16_t GetArqRetryTimeoutTx() const;
345 /**
346 * Get ARQ retry timeout receive
347 * \returns the ARQ retry timeout receive
348 */
349 uint16_t GetArqRetryTimeoutRx() const;
350 /**
351 * Get ARQ block lifetime
352 * \returns the ARQ block lifetime
353 */
354 uint16_t GetArqBlockLifeTime() const;
355 /**
356 * Get ARQ sync loss
357 * \returns the ARQ sync loss value
358 */
359 uint16_t GetArqSyncLoss() const;
360 /**
361 * Get ARQ deliver in order
362 * \returns the ARQ deliver in order
363 */
364 uint8_t GetArqDeliverInOrder() const;
365 /**
366 * Get ARQ purge timeout
367 * \returns the ARQ purge timeout value
368 */
369 uint16_t GetArqPurgeTimeout() const;
370 /**
371 * Get ARQ block size
372 * \returns the ARQ block size
373 */
374 uint16_t GetArqBlockSize() const;
375 /**
376 * Get CS specification
377 * \returns the CS specification
378 */
379 CsSpecification GetCsSpecification() const;
380 /**
381 * Get convergence sublayer
382 * \returns the convergence sublayer
383 */
385 /**
386 * Get unsolicited grant interval
387 * \returns the unsolicited grant interval
388 */
389 uint16_t GetUnsolicitedGrantInterval() const;
390 /**
391 * Get unsolicited polling interval
392 * \returns the unsolicited polling interval
393 */
394 uint16_t GetUnsolicitedPollingInterval() const;
395 /**
396 * Get is multicast
397 * \returns the is multicast flag
398 */
399 bool GetIsMulticast() const;
400 /**
401 * Get modulation
402 * \returns the modulation
403 */
405
406 /**
407 * Set SFID
408 * \param sfid the SFID
409 */
410 void SetSfid(uint32_t sfid);
411 /**
412 * Set service class name
413 * \param name the service class name
414 */
415 void SetServiceClassName(std::string name);
416 /**
417 * Set QOS parameter set type
418 * \param type the QOS parameter set type
419 */
420 void SetQosParamSetType(uint8_t type);
421 /**
422 * Set traffic priority
423 * \param priority the traffic priority
424 */
425 void SetTrafficPriority(uint8_t priority);
426 /**
427 * Set max sustained traffic rate
428 * \param maxSustainedRate the maximum sustained traffic rate
429 */
430 void SetMaxSustainedTrafficRate(uint32_t maxSustainedRate);
431 /**
432 * Set maximum traffic burst
433 * \param maxTrafficBurst the maximum traffic burst
434 */
435 void SetMaxTrafficBurst(uint32_t maxTrafficBurst);
436 /**
437 * Set minimum reserved traffic rate
438 * \param minResvRate the minimum reserved traffic rate
439 */
440 void SetMinReservedTrafficRate(uint32_t minResvRate);
441 /**
442 * Set minimum tolerable traffic rate
443 * \param minJitter the minimum tolerable traffic rate
444 */
445 void SetMinTolerableTrafficRate(uint32_t minJitter);
446 /**
447 * Set service scheduling type
448 * \param schedType the service scheduling type
449 */
451 /**
452 * Set request transmission policy
453 * \param policy the request transmission policy
454 */
456 /**
457 * Set tolerated jitter
458 * \param jitter the tolerated jitter
459 */
460 void SetToleratedJitter(uint32_t jitter);
461 /**
462 * Set maximum latency
463 * \param MaximumLatency the maximum latency
464 */
465 void SetMaximumLatency(uint32_t MaximumLatency);
466 /**
467 * Set fixed versus variable SDU indicator
468 * \param sduIndicator fixed vs variable SDU indicator
469 */
470 void SetFixedversusVariableSduIndicator(uint8_t sduIndicator);
471 /**
472 * Set SDU size
473 * \param sduSize the SDU size
474 */
475 void SetSduSize(uint8_t sduSize);
476 /**
477 * Set target SAID
478 * \param targetSaid the target SAID value
479 */
480 void SetTargetSAID(uint16_t targetSaid);
481 /**
482 * Set ARQ enable
483 * \param arqEnable the ARQ enable setting
484 */
485 void SetArqEnable(uint8_t arqEnable);
486 /**
487 * Set ARQ retry timeout transmit
488 * \param arqWindowSize the ARQ retry timeout transmit
489 */
490 void SetArqWindowSize(uint16_t arqWindowSize);
491 /**
492 * Set ARQ retry timeout transmit
493 * \param timeout the ARQ retry timeout transmit
494 */
495 void SetArqRetryTimeoutTx(uint16_t timeout);
496 /**
497 * Set ARQ retry timeout receive
498 * \param timeout the timeout
499 */
500 void SetArqRetryTimeoutRx(uint16_t timeout);
501 /**
502 * Set ARQ block lifetime
503 * \param lifeTime the ARQ block life time
504 */
505 void SetArqBlockLifeTime(uint16_t lifeTime);
506 /**
507 * Set ARQ sync loss
508 * \param syncLoss the ARQ sync loss
509 */
510 void SetArqSyncLoss(uint16_t syncLoss);
511 /**
512 * Set ARQ deliver in order
513 * \param inOrder the deliver in order setting
514 */
515 void SetArqDeliverInOrder(uint8_t inOrder);
516 /**
517 * Set ARQ purge timeout
518 * \param timeout the timeout value
519 */
520 void SetArqPurgeTimeout(uint16_t timeout);
521 /**
522 * Set ARQ block size
523 * \param size the size
524 */
525 void SetArqBlockSize(uint16_t size);
526 /**
527 * Set CS specification
528 * \param spec the CS specification
529 */
530 void SetCsSpecification(CsSpecification spec);
531 /**
532 * Set convergence sublayer parameters
533 * \param csparam the convergence sublayer parameters
534 */
536
537 /**
538 * Set unsolicited grant interval
539 * \param unsolicitedGrantInterval the unsolicited grant interval
540 */
541 void SetUnsolicitedGrantInterval(uint16_t unsolicitedGrantInterval);
542 /**
543 * Set unsolicited polling interval
544 * \param unsolicitedPollingInterval the unsolicited polling interval
545 */
546 void SetUnsolicitedPollingInterval(uint16_t unsolicitedPollingInterval);
547 /**
548 * Set is multicast
549 * \param isMulticast the is multicast flag
550 */
551 void SetIsMulticast(bool isMulticast);
552 /**
553 * Set modulation
554 * \param modulationType the modulation type
555 */
556 void SetModulation(WimaxPhy::ModulationType modulationType);
557
558 private:
559 uint32_t m_sfid; ///< SFID
560 std::string m_serviceClassName; ///< service class name
561 uint8_t m_qosParamSetType; ///< QOS parameter type
562 uint8_t m_trafficPriority; ///< traffic priority
563 uint32_t m_maxSustainedTrafficRate; ///< maximum sustained traffic rate
564 uint32_t m_maxTrafficBurst; ///< maximum traffic burst
565 uint32_t m_minReservedTrafficRate; ///< minimum reserved traffic rate
566 uint32_t m_minTolerableTrafficRate; ///< minimum tolerable traffic rate
568 uint32_t m_requestTransmissionPolicy; ///< request transmission policy
569 uint32_t m_toleratedJitter; ///< tolerated jitter
570 uint32_t m_maximumLatency; ///< maximum latency
571 uint8_t m_fixedversusVariableSduIndicator; ///< fixed versus variable SDI indicator
572 uint8_t m_sduSize; ///< SDU size
573 uint16_t m_targetSAID; ///< target SAID
574 uint8_t m_arqEnable; ///< ARQ enable
575 uint16_t m_arqWindowSize; ///< ARQ window size
576 uint16_t m_arqRetryTimeoutTx; ///< ARQ retry timeout transmit
577 uint16_t m_arqRetryTimeoutRx; ///< ARQ retry timeout receive
578 uint16_t m_arqBlockLifeTime; ///< ARQ block life time
579 uint16_t m_arqSyncLoss; ///< ARQ sync loss
580 uint8_t m_arqDeliverInOrder; ///< ARQ deliver in order
581 uint16_t m_arqPurgeTimeout; ///< ARQ purge timeout
582 uint16_t m_arqBlockSize; ///< ARQ block size
583 CsSpecification m_csSpecification; ///< CS specification
584 CsParameters m_convergenceSublayerParam; ///< convergence sublayer parameters
585 uint16_t m_unsolicitedGrantInterval; ///< unsolicited grant interval
586 uint16_t m_unsolicitedPollingInterval; ///< unsolicited polling interval
587 Direction m_direction; ///< direction
588 Type m_type; ///< type
590 bool m_isEnabled; ///< is enabled?
591 bool m_isMulticast; ///< is multicast?
593 // will be used by the BS
594 ServiceFlowRecord* m_record; ///< service flow record
595};
596
597} // namespace ns3
598
599#endif /* SERVICE_FLOW_H */
CsParameters class.
Ipv4 addresses are stored in host order in this class.
HeaderType
Header type enumeration.
Smart pointer class similar to boost::intrusive_ptr.
This class implements service flows as described by the IEEE-802.16 standard.
uint16_t m_targetSAID
target SAID
uint32_t m_requestTransmissionPolicy
request transmission policy
uint16_t GetArqSyncLoss() const
Get ARQ sync loss.
void SetTargetSAID(uint16_t targetSaid)
Set target SAID.
void SetRequestTransmissionPolicy(uint32_t policy)
Set request transmission policy.
void SetDirection(Direction direction)
Set direction.
uint16_t m_arqBlockSize
ARQ block size.
void SetSfid(uint32_t sfid)
Set SFID.
void SetCsSpecification(CsSpecification spec)
Set CS specification.
uint16_t GetTargetSAID() const
Get target SAID.
ServiceFlow & operator=(const ServiceFlow &o)
assignment operator
std::string m_serviceClassName
service class name
uint32_t GetRequestTransmissionPolicy() const
Get request transmission policy.
uint32_t m_toleratedJitter
tolerated jitter
ServiceFlow::SchedulingType GetServiceSchedulingType() const
Get service scheduling type.
uint16_t GetArqWindowSize() const
Get ARQ retry timeout transmit.
uint32_t GetMaxSustainedTrafficRate() const
Get max sustained traffic rate.
void SetArqEnable(uint8_t arqEnable)
Set ARQ enable.
void SetArqBlockSize(uint16_t size)
Set ARQ block size.
uint32_t GetMaxTrafficBurst() const
Get max traffic burst.
void SetServiceClassName(std::string name)
Set service class name.
uint32_t GetSfid() const
Get SFID.
uint32_t m_maximumLatency
maximum latency
uint32_t m_minTolerableTrafficRate
minimum tolerable traffic rate
uint32_t GetMaximumLatency() const
Get maximum latency.
uint8_t GetFixedversusVariableSduIndicator() const
Get fixed versus variable SDU indicator.
void PrintQoSParameters() const
Print QoS parameters.
uint16_t m_arqBlockLifeTime
ARQ block life time.
ModulationType
Modulation type enumeration, Table 356 and 362.
ServiceFlow::SchedulingType GetSchedulingType() const
Get scheduling type.
~ServiceFlow()
Destructor.
uint16_t m_unsolicitedGrantInterval
unsolicited grant interval
uint16_t GetUnsolicitedPollingInterval() const
Get unsolicited polling interval.
CsParameters m_convergenceSublayerParam
convergence sublayer parameters
bool m_isEnabled
is enabled?
std::string GetServiceClassName() const
Get service class name.
uint16_t m_arqRetryTimeoutTx
ARQ retry timeout transmit.
uint8_t m_trafficPriority
traffic priority
uint32_t m_minReservedTrafficRate
minimum reserved traffic rate
Ptr< WimaxConnection > m_connection
connection
void SetMaxTrafficBurst(uint32_t maxTrafficBurst)
Set maximum traffic burst.
void SetArqSyncLoss(uint16_t syncLoss)
Set ARQ sync loss.
void SetServiceSchedulingType(ServiceFlow::SchedulingType schedType)
Set service scheduling type.
Tlv ToTlv() const
creates a TLV from this service flow
uint8_t GetQosParamSetType() const
Get QOS parameter set type.
uint32_t m_maxSustainedTrafficRate
maximum sustained traffic rate
void SetMaximumLatency(uint32_t MaximumLatency)
Set maximum latency.
uint8_t m_arqDeliverInOrder
ARQ deliver in order.
void SetModulation(WimaxPhy::ModulationType modulationType)
Set modulation.
uint16_t GetArqRetryTimeoutRx() const
Get ARQ retry timeout receive.
void InitValues()
Initialize values.
void SetQosParamSetType(uint8_t type)
Set QOS parameter set type.
uint32_t m_maxTrafficBurst
maximum traffic burst
uint16_t m_unsolicitedPollingInterval
unsolicited polling interval
uint8_t m_qosParamSetType
QOS parameter type.
SchedulingType
section 11.13.11 Service flow scheduling type, page 701
ServiceFlow()
Default constructor.
uint16_t m_arqSyncLoss
ARQ sync loss.
void SetArqWindowSize(uint16_t arqWindowSize)
Set ARQ retry timeout transmit.
void SetConvergenceSublayerParam(CsParameters csparam)
Set convergence sublayer parameters.
void SetSduSize(uint8_t sduSize)
Set SDU size.
void SetRecord(ServiceFlowRecord *record)
Set service flow record.
char * GetSchedulingTypeStr() const
Get scheduling type string.
uint8_t GetTrafficPriority() const
Get traffic priority.
bool m_isMulticast
is multicast?
uint8_t GetArqEnable() const
Get ARQ enable.
uint32_t GetMinReservedTrafficRate() const
Get minimum reserved traffic rate.
void SetArqPurgeTimeout(uint16_t timeout)
Set ARQ purge timeout.
uint16_t m_arqPurgeTimeout
ARQ purge timeout.
Type
Type enumeration.
uint16_t GetCid() const
Get CID.
bool GetIsEnabled() const
Get is enabled flag.
void SetTrafficPriority(uint8_t priority)
Set traffic priority.
ServiceFlowRecord * m_record
service flow record
bool HasPackets() const
Check if packets are present.
uint8_t GetSduSize() const
Get SDU size.
void SetArqBlockLifeTime(uint16_t lifeTime)
Set ARQ block lifetime.
CsSpecification GetCsSpecification() const
Get CS specification.
void CopyParametersFrom(ServiceFlow sf)
Copy parameters from another service flow.
uint16_t GetArqRetryTimeoutTx() const
Get ARQ retry timeout transmit.
void SetMinTolerableTrafficRate(uint32_t minJitter)
Set minimum tolerable traffic rate.
uint16_t m_arqWindowSize
ARQ window size.
void SetIsMulticast(bool isMulticast)
Set is multicast.
uint8_t GetArqDeliverInOrder() const
Get ARQ deliver in order.
void SetArqRetryTimeoutTx(uint16_t timeout)
Set ARQ retry timeout transmit.
ServiceFlow::SchedulingType m_schedulingType
scheduling type
Type GetType() const
Get type of service flow.
uint8_t m_arqEnable
ARQ enable.
uint8_t m_fixedversusVariableSduIndicator
fixed versus variable SDI indicator
uint32_t GetMinTolerableTrafficRate() const
Get minimum tolerable traffic rate.
void SetToleratedJitter(uint32_t jitter)
Set tolerated jitter.
WimaxPhy::ModulationType GetModulation() const
Get modulation.
void SetUnsolicitedGrantInterval(uint16_t unsolicitedGrantInterval)
Set unsolicited grant interval.
ServiceFlowRecord * GetRecord() const
Get service flow record.
uint8_t m_sduSize
SDU size.
void SetArqDeliverInOrder(uint8_t inOrder)
Set ARQ deliver in order.
uint16_t GetArqBlockLifeTime() const
Get ARQ block lifetime.
uint16_t m_arqRetryTimeoutRx
ARQ retry timeout receive.
uint16_t GetArqBlockSize() const
Get ARQ block size.
void SetArqRetryTimeoutRx(uint16_t timeout)
Set ARQ retry timeout receive.
void SetUnsolicitedPollingInterval(uint16_t unsolicitedPollingInterval)
Set unsolicited polling interval.
void SetMinReservedTrafficRate(uint32_t minResvRate)
Set minimum reserved traffic rate.
void SetType(Type type)
Set type of service flow.
uint16_t GetArqPurgeTimeout() const
Get ARQ purge timeout.
bool GetIsMulticast() const
Get is multicast.
CsSpecification
section 11.13.19.2 CS parameter encoding rules, page 707
bool CheckClassifierMatch(Ipv4Address srcAddress, Ipv4Address dstAddress, uint16_t srcPort, uint16_t dstPort, uint8_t proto) const
check classifier match.
CsSpecification m_csSpecification
CS specification.
uint32_t GetToleratedJitter() const
Get tolerated jitter.
Direction
Direction enumeration.
Ptr< WimaxMacQueue > GetQueue() const
Get pointer to queue.
uint16_t GetUnsolicitedGrantInterval() const
Get unsolicited grant interval.
uint32_t m_sfid
SFID.
void SetFixedversusVariableSduIndicator(uint8_t sduIndicator)
Set fixed versus variable SDU indicator.
Direction GetDirection() const
Get direction.
Direction m_direction
direction
CsParameters GetConvergenceSublayerParam() const
Get convergence sublayer.
void SetMaxSustainedTrafficRate(uint32_t maxSustainedRate)
Set max sustained traffic rate.
Ptr< WimaxConnection > GetConnection() const
Can return a null connection is this service flow has not been associated yet to a connection.
void CleanUpQueue()
Shall be called only by BS.
WimaxPhy::ModulationType m_modulationType
modulation type
void SetConnection(Ptr< WimaxConnection > connection)
Set connection.
void SetIsEnabled(bool isEnabled)
Set is enabled flag.
this class implements a structure to manage some parameters and statistics related to a service flow
This class implements the Type-Len-Value structure channel encodings as described by "IEEEStandard fo...
Definition wimax-tlv.h:76
ModulationType
ModulationType enumeration.
Definition wimax-phy.h:43
Every class exported by the ns3 library is enclosed in the ns3 namespace.
ns3::Time timeout