DESERT 3.5.1
Loading...
Searching...
No Matches
UWAloha Class Reference

#include <uwaloha.h>

Inheritance diagram for UWAloha:
Collaboration diagram for UWAloha:

Classes

class  AckTimer
 
class  BackOffTimer
 
class  UWAlohaTimer
 

Public Member Functions

 UWAloha ()
 
virtual ~UWAloha ()
 
virtual int command (int argc, const char *const *argv)
 

Protected Types

enum  UWALOHA_STATUS {
  UWALOHA_STATE_IDLE = 1 , UWALOHA_STATE_BACKOFF , UWALOHA_STATE_TX_DATA , UWALOHA_STATE_TX_ACK ,
  UWALOHA_STATE_WAIT_ACK , UWALOHA_STATE_DATA_RX , UWALOHA_STATE_ACK_RX , UWALOHA_STATE_NOT_SET ,
  UWALOHA_STATE_CHK_ACK_TIMEOUT , UWALOHA_STATE_RX_IDLE , UWALOHA_STATE_RX_WAIT_ACK , UWALOHA_STATE_CHK_BACKOFF_TIMEOUT ,
  UWALOHA_STATE_RX_BACKOFF , UWALOHA_STATE_WRONG_PKT_RX
}
 
enum  UWALOHA_REASON_STATUS {
  UWALOHA_REASON_DATA_PENDING , UWALOHA_REASON_DATA_RX , UWALOHA_REASON_DATA_TX , UWALOHA_REASON_ACK_TX ,
  UWALOHA_REASON_ACK_RX , UWALOHA_REASON_ACK_TIMEOUT , UWALOHA_REASON_DATA_EMPTY , UWALOHA_REASON_NOT_SET ,
  UWALOHA_REASON_MAX_TX_TRIES , UWALOHA_REASON_START_RX , UWALOHA_REASON_PKT_NOT_FOR_ME , UWALOHA_REASON_WAIT_ACK_PENDING ,
  UWALOHA_REASON_PKT_ERROR , UWALOHA_REASON_BACKOFF_TIMEOUT , UWALOHA_REASON_BACKOFF_PENDING
}
 
enum  UWALOHA_PKT_TYPE { UWALOHA_ACK_PKT = 1 , UWALOHA_DATA_PKT , UWALOHA_DATAMAX_PKT }
 
enum  UWALOHA_ACK_MODES { UWALOHA_ACK_MODE = 1 , UWALOHA_NO_ACK_MODE }
 
enum  UWALOHA_TIMER_STATUS { UWALOHA_IDLE = 1 , UWALOHA_RUNNING , UWALOHA_FROZEN , UWALOHA_EXPIRED }
 

Protected Member Functions

virtual void recvFromUpperLayers (Packet *p)
 
virtual void Mac2PhyStartTx (Packet *p)
 
virtual void Phy2MacEndTx (const Packet *p)
 
virtual void Phy2MacStartRx (const Packet *p)
 
virtual void Phy2MacEndRx (Packet *p)
 
virtual double computeTxTime (UWALOHA_PKT_TYPE type)
 
virtual void initPkt (Packet *p, UWALOHA_PKT_TYPE pkt_type, int dest_addr=0)
 
virtual double getBackoffTime ()
 
virtual void txData ()
 
virtual void txAck (int dest_addr)
 
virtual void stateIdle ()
 
virtual void stateRxIdle ()
 
virtual void stateTxData ()
 
virtual void stateTxAck (int dest_addr)
 
virtual void stateWaitAck ()
 
virtual void stateRxWaitAck ()
 
virtual void stateBackoff ()
 
virtual void stateRxBackoff ()
 
virtual void stateCheckAckExpired ()
 
virtual void stateCheckBackoffExpired ()
 
virtual void stateRxData (Packet *p)
 
virtual void stateRxAck (Packet *p)
 
virtual void exitBackoff ()
 
virtual void printStateInfo (double delay=0)
 
virtual void initInfo ()
 
virtual void refreshState (UWALOHA_STATUS state)
 
virtual void refreshReason (UWALOHA_REASON_STATUS reason)
 
virtual void incrCurrTxRounds ()
 
virtual void resetCurrTxRounds ()
 
virtual void updateRTT (double rtt)
 
virtual double getRTT ()
 
virtual void updateAckTimeout (double rtt)
 
virtual void updateLastDataIdRx (int id)
 
virtual void waitForUser ()
 
int getPktSeqNum (Packet *p)
 
void putPktInQueue (Packet *p)
 
void eraseItemFromPktQueue (int seq_num)
 
void putAckTimerInMap (int seq_num)
 
void eraseItemFrommapAckTimer (int seq_num)
 
virtual int getRemainingPkts ()
 
virtual void incrUpperDataRx ()
 
int getUpLayersDataPktsRx ()
 

Protected Attributes

int max_tx_tries
 
double wait_constant
 
double backoff_tuner
 
int max_payload
 
int HDR_size
 
int ACK_size
 
double ACK_timeout
 
int buffer_pkts
 
double alpha_
 
int max_backoff_counter
 
int uwaloha_debug
 
int last_sent_data_id
 
bool print_transitions
 
bool has_buffer_queue
 
double start_tx_time
 
double srtt
 
double sumrtt
 
double sumrtt2
 
int rttsamples
 
int curr_tx_rounds
 
int last_data_id_rx
 
int recv_data_id
 
Packet * curr_data_pkt
 
int txsn
 
AckTimer ack_timer
 
BackOffTimer backoff_timer
 
UWALOHA_REASON_STATUS last_reason
 
UWALOHA_STATUS curr_state
 
UWALOHA_STATUS prev_state
 
UWALOHA_STATUS prev_prev_state
 
UWALOHA_ACK_MODES ack_mode
 
map< pktSeqNum, Packet * > mapPacket
 
map< pktSeqNum, AckTimermapAckTimer
 
ofstream fout
 

Static Protected Attributes

static bool initialized = false
 
static const double prop_speed = 1500.0
 
static map< UWALOHA_STATUS, string > status_info
 
static map< UWALOHA_REASON_STATUS, string > reason_info
 
static map< UWALOHA_PKT_TYPE, string > pkt_type_info
 

Detailed Description

This is the base class of UWAloha protocol, which is a derived class of MMac.

Definition at line 68 of file uwaloha.h.

Member Enumeration Documentation

◆ UWALOHA_ACK_MODES

Enumeration class of UWAloha acknowledgement mode.

First enumerator is given value 1. This protocol supports both acknowledgement and non-acknowledgement technique. If Acknowledgement is set, it uses Stop-And-Wait ARQ technique.

Enumerator
UWALOHA_ACK_MODE 
UWALOHA_NO_ACK_MODE 

Definition at line 151 of file uwaloha.h.

◆ UWALOHA_PKT_TYPE

enum UWAloha::UWALOHA_PKT_TYPE
protected

Enumeration class of UWAloha packet type.

First enumerator is given value

  1. Three kinds of packets are supported by UWAloha protocol.
Enumerator
UWALOHA_ACK_PKT 
UWALOHA_DATA_PKT 
UWALOHA_DATAMAX_PKT 

Definition at line 139 of file uwaloha.h.

◆ UWALOHA_REASON_STATUS

Enumeration class which tells the nodes the reason why it is in this state.

First enumerator is given value 1.

Enumerator
UWALOHA_REASON_DATA_PENDING 
UWALOHA_REASON_DATA_RX 
UWALOHA_REASON_DATA_TX 
UWALOHA_REASON_ACK_TX 
UWALOHA_REASON_ACK_RX 
UWALOHA_REASON_ACK_TIMEOUT 
UWALOHA_REASON_DATA_EMPTY 
UWALOHA_REASON_NOT_SET 
UWALOHA_REASON_MAX_TX_TRIES 
UWALOHA_REASON_START_RX 
UWALOHA_REASON_PKT_NOT_FOR_ME 
UWALOHA_REASON_WAIT_ACK_PENDING 
UWALOHA_REASON_PKT_ERROR 
UWALOHA_REASON_BACKOFF_TIMEOUT 
UWALOHA_REASON_BACKOFF_PENDING 

Definition at line 117 of file uwaloha.h.

◆ UWALOHA_STATUS

enum UWAloha::UWALOHA_STATUS
protected

Enumeration class of UWAloha status.

First enumerator is given value 1.

Enumerator
UWALOHA_STATE_IDLE 
UWALOHA_STATE_BACKOFF 
UWALOHA_STATE_TX_DATA 
UWALOHA_STATE_TX_ACK 
UWALOHA_STATE_WAIT_ACK 
UWALOHA_STATE_DATA_RX 
UWALOHA_STATE_ACK_RX 
UWALOHA_STATE_NOT_SET 
UWALOHA_STATE_CHK_ACK_TIMEOUT 
UWALOHA_STATE_RX_IDLE 
UWALOHA_STATE_RX_WAIT_ACK 
UWALOHA_STATE_CHK_BACKOFF_TIMEOUT 
UWALOHA_STATE_RX_BACKOFF 
UWALOHA_STATE_WRONG_PKT_RX 

Definition at line 96 of file uwaloha.h.

◆ UWALOHA_TIMER_STATUS

Enumeration class of UWAloha timer status.

First enumerator is given value

  1. It is employed to know the current status of a timer.
Enumerator
UWALOHA_IDLE 
UWALOHA_RUNNING 
UWALOHA_FROZEN 
UWALOHA_EXPIRED 

Definition at line 157 of file uwaloha.h.

Constructor & Destructor Documentation

◆ UWAloha()

UWAloha::UWAloha ( )

Constructor of UWAloha Class.

Definition at line 119 of file uwaloha.cpp.

◆ ~UWAloha()

UWAloha::~UWAloha ( )
virtual

Destructor of UWAloha Class.

Definition at line 162 of file uwaloha.cpp.

Member Function Documentation

◆ command()

int UWAloha::command ( int  argc,
const char *const *  argv 
)
virtual

TCL command interpreter.

It implements the following OTcl methods:

Parameters
argcnumber of arguments in argv
argvarray of strings which are the command parameters (Note that argv[0] is the name of the object)
Returns
TCL_OK or TCL_ERROR whether the command has been dispatched succesfully or not

Definition at line 169 of file uwaloha.cpp.

◆ computeTxTime()

double UWAloha::computeTxTime ( UWALOHA_PKT_TYPE  type)
protectedvirtual

Compute the transmission time of a packet.

It uses a cross-layer message to calculate the duration of that packet.

Parameters
typeis a UWALOHA_PKT_TYPE
Returns
tranmission time of a packet which is a double data type.

Definition at line 310 of file uwaloha.cpp.

◆ eraseItemFrommapAckTimer()

void UWAloha::eraseItemFrommapAckTimer ( int  seq_num)
inlineprotected

Erase an item from acknowledgement stored container.

Parameters
seq_numwhich is an integer data type.

Definition at line 703 of file uwaloha.h.

◆ eraseItemFromPktQueue()

void UWAloha::eraseItemFromPktQueue ( int  seq_num)
inlineprotected

It erases the packet from the container.

Parameters
seq_numwhich is an integer data type.

Definition at line 677 of file uwaloha.h.

◆ exitBackoff()

void UWAloha::exitBackoff ( )
protectedvirtual

It stops the backoff timer.

Definition at line 280 of file uwaloha.cpp.

◆ getBackoffTime()

double UWAloha::getBackoffTime ( )
protectedvirtual

This function calculates the backoff duration and return the backoff time.It employs the exponential backoff algorithm.

Returns
backoff duration which is a double data type.

Definition at line 286 of file uwaloha.cpp.

◆ getPktSeqNum()

int UWAloha::getPktSeqNum ( Packet *  p)
inlineprotected

This method is used to get the sequence number from a packet.

Parameters
packetpointer
Returns
it returns sequence number which is an integer data type.

Definition at line 653 of file uwaloha.h.

◆ getRemainingPkts()

virtual int UWAloha::getRemainingPkts ( )
inlineprotectedvirtual

Number of packets which MAC layer receives form upper layer(s) but were not transmitted.

Returns
an integer value.

Definition at line 719 of file uwaloha.h.

◆ getRTT()

virtual double UWAloha::getRTT ( )
inlineprotectedvirtual

This method is used to get the average RTT over all the receives RTT.

Returns
average RTT time which is a double data type.

Definition at line 626 of file uwaloha.h.

◆ getUpLayersDataPktsRx()

int UWAloha::getUpLayersDataPktsRx ( )
inlineprotected

Definition at line 734 of file uwaloha.h.

◆ incrCurrTxRounds()

virtual void UWAloha::incrCurrTxRounds ( )
inlineprotectedvirtual

Increments the current transmission round of a packet.

It keeps track of the number of retransmition of a packet.

Definition at line 600 of file uwaloha.h.

◆ incrUpperDataRx()

virtual void UWAloha::incrUpperDataRx ( )
inlineprotectedvirtual

Increment the number of Data packet receive for the upper layer.

Definition at line 728 of file uwaloha.h.

◆ initInfo()

void UWAloha::initInfo ( )
protectedvirtual

This function is used to initialize the UWAloha protocol.

Definition at line 208 of file uwaloha.cpp.

◆ initPkt()

void UWAloha::initPkt ( Packet *  p,
UWALOHA_PKT_TYPE  pkt_type,
int  dest_addr = 0 
)
protectedvirtual

This method, initialize the packet.

If the packet is received from the upper layer, it adds the header (if any). In case of UWAloha with ARQ technique, it set the fields of ACK packet.

Parameters
Packetpointer P. The packet can be Data packet or ACK packet.
pkt_typeis an UWALOHA_PKT_TYPE. Packet can be either Data packet or ACK packet.
dest_addris a integer data type. It is initialized as 0.

Definition at line 369 of file uwaloha.cpp.

◆ Mac2PhyStartTx()

void UWAloha::Mac2PhyStartTx ( Packet *  p)
protectedvirtual

It informs that a packet transmission started.

Parameters
Packetpointer

Definition at line 393 of file uwaloha.cpp.

◆ Phy2MacEndRx()

void UWAloha::Phy2MacEndRx ( Packet *  p)
protectedvirtual

PHY layer informs the MAC layer that the reception of the packet is over.

Parameters
Packetpointer.

Definition at line 465 of file uwaloha.cpp.

◆ Phy2MacEndTx()

void UWAloha::Phy2MacEndTx ( const Packet *  p)
protectedvirtual

It infroms that a packet transmission end.

Parameters
Packetpointer

Definition at line 403 of file uwaloha.cpp.

◆ Phy2MacStartRx()

void UWAloha::Phy2MacStartRx ( const Packet *  p)
protectedvirtual

PHY layer informs the MAC layer that it is receiving a packet.

@Param Packet pointer (constant)

Definition at line 457 of file uwaloha.cpp.

◆ printStateInfo()

void UWAloha::printStateInfo ( double  delay = 0)
protectedvirtual

This methods print the state information of the nodes.

Parameters
delayis a double data type.

Definition at line 815 of file uwaloha.cpp.

◆ putAckTimerInMap()

void UWAloha::putAckTimerInMap ( int  seq_num)
inlineprotected

Put acknowledgement timer in the container.

Parameters
seq_numwhich is an integer data type.

Definition at line 693 of file uwaloha.h.

◆ putPktInQueue()

void UWAloha::putPktInQueue ( Packet *  p)
inlineprotected

A node receives packet(s) from upper layer and store them in the container.

Parameters
packetpointer

Definition at line 667 of file uwaloha.h.

◆ recvFromUpperLayers()

void UWAloha::recvFromUpperLayers ( Packet *  p)
protectedvirtual

This function receives the packet from upper layer and save it in the queue.

Parameters
Packetpointer

Definition at line 339 of file uwaloha.cpp.

◆ refreshReason()

virtual void UWAloha::refreshReason ( UWALOHA_REASON_STATUS  reason)
inlineprotectedvirtual

To know the reason why a node is in this current state.

Parameters
reasonis an UWALOHA_REASON_STATUS type.

Definition at line 590 of file uwaloha.h.

◆ refreshState()

virtual void UWAloha::refreshState ( UWALOHA_STATUS  state)
inlineprotectedvirtual

Refreshes the states of the node.

The node save the information of three states, they are: previous to previous state, previous state and current state of the node.

Parameters
statewhich is an UWALOHA_STATUS type.

Definition at line 578 of file uwaloha.h.

◆ resetCurrTxRounds()

virtual void UWAloha::resetCurrTxRounds ( )
inlineprotectedvirtual

If a node is going to transmit a new packet, it resets the tx counter.

Definition at line 609 of file uwaloha.h.

◆ stateBackoff()

void UWAloha::stateBackoff ( )
protectedvirtual

If ACK packet is not received within the acknowledgement expire time.

Definition at line 634 of file uwaloha.cpp.

◆ stateCheckAckExpired()

void UWAloha::stateCheckAckExpired ( )
protectedvirtual

It checks whether the ack timer is already expired while it was busy with other activities.

Definition at line 548 of file uwaloha.cpp.

◆ stateCheckBackoffExpired()

void UWAloha::stateCheckBackoffExpired ( )
protectedvirtual

It checks whether the backoff timer is already expired while it was busy with other activities.

Definition at line 578 of file uwaloha.cpp.

◆ stateIdle()

void UWAloha::stateIdle ( )
protectedvirtual

Node is in Idle state.

It only changes its state if it has packet(s) to transmit or it receives a packet.

Definition at line 605 of file uwaloha.cpp.

◆ stateRxAck()

void UWAloha::stateRxAck ( Packet *  p)
protectedvirtual

The node comes to this state if it receives an ACK packet.

After receiving an ACK packet it changes it states according to the previously stored status information.

Definition at line 789 of file uwaloha.cpp.

◆ stateRxBackoff()

void UWAloha::stateRxBackoff ( )
protectedvirtual

If a node start receiving a packet when it is in backoff state.

The node first freeze (or another word, hold) the backoff timer and start receiving the packet.

Definition at line 651 of file uwaloha.cpp.

◆ stateRxData()

void UWAloha::stateRxData ( Packet *  p)
protectedvirtual

It process the packet which is received.

After receiving a packet it changes it states according to the previously stored status information.

Parameters
<i>Data</i>packet pointer

Definition at line 764 of file uwaloha.cpp.

◆ stateRxIdle()

void UWAloha::stateRxIdle ( )
protectedvirtual

If a node start receiving a packet in Idle state.

Definition at line 625 of file uwaloha.cpp.

◆ stateRxWaitAck()

void UWAloha::stateRxWaitAck ( )
protectedvirtual

If a node receives any packet while it was waiting for ACK packet, it moves to this state.

The packet it is receiving can be a Data packet from another node or ACK packet.

Definition at line 741 of file uwaloha.cpp.

◆ stateTxAck()

void UWAloha::stateTxAck ( int  dest_addr)
protectedvirtual

If the protocl uses ARQ technique, in that case, after receiving a Data packet the node sends an ACK packet.

Definition at line 750 of file uwaloha.cpp.

◆ stateTxData()

void UWAloha::stateTxData ( )
protectedvirtual

If a node has packet to transmits.

In such case, it moves from Idle state to data transmits state.

Definition at line 661 of file uwaloha.cpp.

◆ stateWaitAck()

void UWAloha::stateWaitAck ( )
protectedvirtual

After transmitting a Data packet, a node waits for the ACK packet.

Definition at line 722 of file uwaloha.cpp.

◆ txAck()

void UWAloha::txAck ( int  dest_addr)
protectedvirtual

This methods transmits ACK packet from MAC layer to PHY layer.

Parameters
dest_addrwhich is an integer data type.

Definition at line 538 of file uwaloha.cpp.

◆ txData()

void UWAloha::txData ( )
protectedvirtual

This method transmits Data packets from MAC layer to PHY layer.

Definition at line 524 of file uwaloha.cpp.

◆ updateAckTimeout()

void UWAloha::updateAckTimeout ( double  rtt)
protectedvirtual

Like updateRTT() function.

Definition at line 265 of file uwaloha.cpp.

◆ updateLastDataIdRx()

virtual void UWAloha::updateLastDataIdRx ( int  id)
inlineprotectedvirtual

It updates the sequence number of the last data packet rx.

Parameters
idis an integer data type.

Definition at line 641 of file uwaloha.h.

◆ updateRTT()

void UWAloha::updateRTT ( double  rtt)
protectedvirtual

Update the Round Trip Time (RTT) which is necessary to compute the acknowledgement duration as well as backoff duration.

Parameters
rttis a double data type.

Definition at line 255 of file uwaloha.cpp.

◆ waitForUser()

void UWAloha::waitForUser ( )
protectedvirtual

Definition at line 840 of file uwaloha.cpp.

Member Data Documentation

◆ ack_mode

UWALOHA_ACK_MODES UWAloha::ack_mode
protected

Enum variable.

It tells the node whether to use ARQ technique or not.

Definition at line 800 of file uwaloha.h.

◆ ACK_size

int UWAloha::ACK_size
protected

Size of the ACK, if the node uses ARQ technique.

Definition at line 746 of file uwaloha.h.

◆ ACK_timeout

double UWAloha::ACK_timeout
protected

ACK timeout for the initial packet.

Definition at line 747 of file uwaloha.h.

◆ ack_timer

AckTimer UWAloha::ack_timer
protected

An object of the AckTimer class.

Definition at line 785 of file uwaloha.h.

◆ alpha_

double UWAloha::alpha_
protected

This variable is used to tune the RTT.

Definition at line 749 of file uwaloha.h.

◆ backoff_timer

BackOffTimer UWAloha::backoff_timer
protected

An object of the backoff timer class.

Definition at line 786 of file uwaloha.h.

◆ backoff_tuner

double UWAloha::backoff_tuner
protected

Tunes the backoff duration.

Definition at line 743 of file uwaloha.h.

◆ buffer_pkts

int UWAloha::buffer_pkts
protected

Number of packets a node can store in the container.

Definition at line 748 of file uwaloha.h.

◆ curr_data_pkt

Packet* UWAloha::curr_data_pkt
protected

Pointer of the latest selected data packet.

Definition at line 779 of file uwaloha.h.

◆ curr_state

UWALOHA_STATUS UWAloha::curr_state
protected

Enum variable.

It stores the current state of a node

Definition at line 791 of file uwaloha.h.

◆ curr_tx_rounds

int UWAloha::curr_tx_rounds
protected

How many times a packet is transmitted.

Definition at line 774 of file uwaloha.h.

◆ fout

ofstream UWAloha::fout
protected

An object of ofstream class.

Definition at line 817 of file uwaloha.h.

◆ has_buffer_queue

bool UWAloha::has_buffer_queue
protected

Whether the node has buffer to store data or not.

Definition at line 765 of file uwaloha.h.

◆ HDR_size

int UWAloha::HDR_size
protected

Size of the HDR if any.

Definition at line 745 of file uwaloha.h.

◆ initialized

bool UWAloha::initialized = false
staticprotected

It checks whether UWAloha protocol is initialized or not.

If FALSE means, not initialized and if TRUE means it is initialized

Definition at line 756 of file uwaloha.h.

◆ last_data_id_rx

int UWAloha::last_data_id_rx
protected

The sequence number of last received packet.

Definition at line 775 of file uwaloha.h.

◆ last_reason

UWALOHA_REASON_STATUS UWAloha::last_reason
protected

Enum variable which stores the last reason why a node changes its state.

Definition at line 789 of file uwaloha.h.

◆ last_sent_data_id

int UWAloha::last_sent_data_id
protected

sequence number of the last sent packet

Definition at line 761 of file uwaloha.h.

◆ mapAckTimer

map<pktSeqNum, AckTimer> UWAloha::mapAckTimer
protected

Container where acknowledgement timer(s) is stored.

Definition at line 814 of file uwaloha.h.

◆ mapPacket

map<pktSeqNum, Packet *> UWAloha::mapPacket
protected

Container where Data packets are stored.

Definition at line 813 of file uwaloha.h.

◆ max_backoff_counter

int UWAloha::max_backoff_counter
protected

Maximum number of backoff it will consider while it increases the backoff exponentially.

Definition at line 750 of file uwaloha.h.

◆ max_payload

int UWAloha::max_payload
protected

Maximum number of payload in a packet.

Definition at line 744 of file uwaloha.h.

◆ max_tx_tries

int UWAloha::max_tx_tries
protected

Maximum number of transmissions for one packet.

Definition at line 740 of file uwaloha.h.

◆ pkt_type_info

map< UWAloha::UWALOHA_PKT_TYPE, string > UWAloha::pkt_type_info
staticprotected

Container which stores all the packet type information of UWAloha.

Definition at line 809 of file uwaloha.h.

◆ prev_prev_state

UWALOHA_STATUS UWAloha::prev_prev_state
protected

Enum variable.

It stores the previous to previous state of a node

Definition at line 796 of file uwaloha.h.

◆ prev_state

UWALOHA_STATUS UWAloha::prev_state
protected

Enum variable.

It stores the previous state of a node

Definition at line 794 of file uwaloha.h.

◆ print_transitions

bool UWAloha::print_transitions
protected

Whether to print the state of the nodes.

Definition at line 763 of file uwaloha.h.

◆ prop_speed

const double UWAloha::prop_speed = 1500.0
staticprotected

Speed of the sound signal.

Definition at line 783 of file uwaloha.h.

◆ reason_info

map< UWAloha::UWALOHA_REASON_STATUS, string > UWAloha::reason_info
staticprotected

Container which stores all the reason information.

Definition at line 806 of file uwaloha.h.

◆ recv_data_id

int UWAloha::recv_data_id
protected

The sequence number of the packet which is received.

Definition at line 776 of file uwaloha.h.

◆ rttsamples

int UWAloha::rttsamples
protected

Number of RTT samples.

Definition at line 772 of file uwaloha.h.

◆ srtt

double UWAloha::srtt
protected

Smoothed Round Trip Time, calculated as for TCP.

Definition at line 769 of file uwaloha.h.

◆ start_tx_time

double UWAloha::start_tx_time
protected

Time when a packet start transmitting.

Definition at line 768 of file uwaloha.h.

◆ status_info

map< UWAloha::UWALOHA_STATUS, string > UWAloha::status_info
staticprotected

Container which stores all the status information.

Definition at line 802 of file uwaloha.h.

◆ sumrtt

double UWAloha::sumrtt
protected

Sum of RTT samples.

Definition at line 770 of file uwaloha.h.

◆ sumrtt2

double UWAloha::sumrtt2
protected

Sum of (RTT^2)

Definition at line 771 of file uwaloha.h.

◆ txsn

int UWAloha::txsn
protected

Sequence number of the packet which is transmitted.

Definition at line 781 of file uwaloha.h.

◆ uwaloha_debug

int UWAloha::uwaloha_debug
protected

Debuging Flag.

Definition at line 753 of file uwaloha.h.

◆ wait_constant

double UWAloha::wait_constant
protected

This fixed time is used to componsate different time variations.

Definition at line 741 of file uwaloha.h.


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