Public Member Functions | Static Public Member Functions | Private Member Functions

ns3::DcaTxop Class Reference

handle packet fragmentation and retransmissions. More...

#include <dca-txop.h>

Inheritance diagram for ns3::DcaTxop:
Inheritance graph
[legend]
Collaboration diagram for ns3::DcaTxop:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void SetTxOkCallback (TxOk callback)
void SetTxFailedCallback (TxFailed callback)
void Queue (Ptr< const Packet > packet, WifiMacHeader const &hdr)

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::Object.

Private Member Functions

virtual void DoDispose (void)

Detailed Description

handle packet fragmentation and retransmissions.

This class implements the packet fragmentation and retransmission policy. It uses the ns3::MacLow and ns3::DcfManager helper classes to respectively send packets and decide when to send them. Packets are stored in a ns3::WifiMacQueue until they can be sent.

The policy currently implemented uses a simple fragmentation threshold: any packet bigger than this threshold is fragmented in fragments whose size is smaller than the threshold.

The retransmission policy is also very simple: every packet is retransmitted until it is either successfully transmitted or it has been retransmitted up until the ssrc or slrc thresholds.

The rts/cts policy is similar to the fragmentation policy: when a packet is bigger than a threshold, the rts/cts protocol is used.


Member Function Documentation

virtual void ns3::DcaTxop::DoDispose ( void   )  [private, virtual]

This method is called by Object::Dispose or by the object's destructor, whichever comes first.

Subclasses are expected to implement their real destruction code in an overriden version of this method and chain up to their parent's implementation once they are done. i.e., for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose method.

Reimplemented from ns3::Object.

static TypeId ns3::DcaTxop::GetTypeId ( void   )  [static]

This method returns the TypeId associated to ns3::Object.

No Attributes defined for this type.
No TraceSources defined for this type.

Reimplemented from ns3::Object.

void ns3::DcaTxop::Queue ( Ptr< const Packet packet,
WifiMacHeader const &  hdr 
)
Parameters:
packet packet to send
hdr header of packet to send.

Store the packet in the internal queue until it can be sent safely.

void ns3::DcaTxop::SetTxFailedCallback ( TxFailed  callback  ) 
Parameters:
callback the callback to invoke when a packet transmission was completed unsuccessfully.
void ns3::DcaTxop::SetTxOkCallback ( TxOk  callback  ) 
Parameters:
callback the callback to invoke when a packet transmission was completed successfully.

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