Mac802_16BS Class Reference

#include <mac-802_16.h>

Inheritance diagram for Mac802_16BS:

Mac802_16 List of all members.

Public Member Functions

int register_to_bs (int macaddr, u_int16_t priority, u_char def_up, u_char def_dn, struct upstream_sflow *UpEntry, u_char UpSize, struct downstream_sflow *DownEntry, u_char DownSize)
int compare_priority (priority_array_p A, priority_array_p B)
 Mac802_16BS ()
 ~Mac802_16BS ()

Public Attributes

ss_recordSSRecord
u_int16_t CurrIndexSSTable

Protected Member Functions

int command (int argc, const char *const *argv)

Private Member Functions

void SSRngHandler (Event *e)
void SSSndTimerHandler (Event *e)
void SSReqTimerHandler (Event *e)
void UnlockQueue ()
void BsMapHandler (Event *e)
 This is called when a MAP is to be sent.
void BsSyncHandler (Event *e)
void BsUcdHandler (Event *e)
void BsRngHandler (Event *e)
void BsWindowTimerHandler (Event *e)
void RateControl (Packet *, int, int, int)
double getupdatedtokens (int, int)
void BsTokenHandler (Event *)
void insert_tokenlist (double, int, int)
void sendUp (Packet *p)
void sendDown (Packet *p)
void RecvFrame (Packet *, int)
void PassDownstream (Packet *)
void HandleInData (Packet *, int, int)
void HandleInMgmt (Packet *)
void HandleFrag (Packet *)
void HandleConcat (Packet *, int, int)
void ReleaseJobs ()
void fill_job (struct job *, char, char, double, u_int32_t, double, double, u_int16_t)
void InsertJob (struct job *, int)
void HandleReq (u_int16_t, int, int, bool)
void tune_parameters ()
void alloc_bw ()
void delete_joblist (int)
void PhUnsupress (Packet *, int, int)
void ApplyPhs (Packet *, int, int)
void MakeAperiodicAlloc (struct job *, mapptr, int)
void AllocMemSSrecord ()
void MakePeriodicAllocation (int, mapptr, double)
void ReOrder (mapptr)
void MarkOtherSlots (mapptr, u_int32_t, int)
void jobdrop (mapptr)
void MarkGrantPending (u_int32_t *, double)
void SendMap ()
u_int32_t MarkUnusedSlots (u_int32_t)
void find_flowindex (u_int16_t, int *, int *)
void SendFrame (Packet *, int)
void BsSendHandler (Event *)
void dump_stats ()
void ParseExtHdr (Packet *)
void dumpUGSJITTER (char *)
void UpdateJitter (int, u_int16_t, double)
int find_size_map ()
int NumContSlots (mapptr *)
int ChkQoSJobs (double, double)
int classify (Packet *, char, int *)
int insert_mapjob (int, jptr, u_int32_t *, int)
int insert_mapjob (struct job *, u_int32_t *)
int find_ss (int)
u_int32_t MarkOtherAlloc (u_int32_t)
u_int32_t FillMap (int, int, int, int, int)
mapptr find_best_hole (u_int32_t)
mapptr find_next (mapptr)
mapptr find_prv (mapptr)
mapptr TryAlloc (double, u_int32_t)
double determine_deadline (char, int, int)
double FitMap (mapptr, double)
double CalculateAckTime ()
void print_job_list (int)
void print_map_list ()
void print_short_map_list (Packet *Pkt)
 This method dumps all IE's associated with the map.
void delete_maplist ()
void dumpBWBS (char *fileName)
void dumpFinalBSStats (char *fileName, int DSBW, int USBW)
void dumpFinalSIDStats (int cindex, int findex, char *fileName, int DSBW)
void dumpFinalDSSIDS (char *fileName, int DSBW)
void dump802_16QueueStats (char *fileName, int channelBW)
void dump802_16UtilStats (char *fileName, int channelDSBW, int channelUSBW)
void insert_pkt_at_Head (Packet *, int, int)
int len_mgmtqueue ()
Packet * deque_pkt ()
int packetTrace (Packet *p, int direction)
void HandleOutData (Packet *, int, int)
int down_idle (int, int, EventType, Packet *)
int down_decision (int, int, EventType, Packet *)
int down_tosend (int, int, EventType, Packet *)
int down_waitformap (int, int, EventType, Packet *)
void UpdateAllocationTable (int, int)
void UpdateJitter (int, int)
bool insert_pkt (Packet *, int, int)
double timer_expiration (int, int, Packet *)
Packet * deque_pkt (int, int)
void insert_mgmtpkt (Packet *, int, int)
void insert_sndlist (double, int, int)
void BsSndTimerHandler (Event *e)
void alloc_ul_bw (double, double, u_int32_t)
void alloc_dl_bw (double, double, u_int32_t)
void checkDeadline (double, double, u_int32_t &)
void checkMinimumBW (u_int32_t &, priority_array_p &, int &)
void MakeAllocation (jptr, int, mapptr, char, int)
int CanBeSent (aptr &, Packet *)

Private Attributes

double window_
Map802_16Timer mhMap_
BsRng802_16Timer mhRng_
BsUcd802_16Timer mhUcd_
BsSync802_16Timer mhSync_
BsTxPkt802_16Timer mhBsTxPkt_
BsServiceFlowSendTimer mhBsSend_
BsUplinkSchedWindowTimer mhWdw_
BsToken802_16Timer mhToken_
tkptr TokenList
bs_conf_param Conf_Table_
u_int16_t SizeSSTable
bs_statistics SSStatistics_
jobjob_list [8]
mapptr mptr
bs_sptr BsSndList
double map_stime
double omap_stime
double map_etime
double omap_etime
double map_acktime
double AckTime
double max_slots_pmap
double next_map
int numIE
int map_lookahead
int MAP_LOOKAHEAD
int max_burst_slots
int rem_overhead
int MapPropDelay
int size_rtqueue
int avg_szrtqueue
double last_mrqtime
int size_bfqueue
int avg_szbfqueue
double last_mbfqtime
int num_bfreq
int avg_bfreq
double last_mbfreq
int num_rtreq
int avg_rtreq
double last_mrtreq
double last_dmptime
u_int32_t num_dgrant
u_int32_t num_contention
u_int32_t num_req
u_int32_t num_gpend
u_int32_t avg_dgrant
u_int32_t avg_contention
u_int32_t avg_req
u_int32_t avg_gpend
u_int32_t dropped_tokenq
u_int32_t dropped_dsq
double proportion
u_char contention_thrhold
u_char network_status
u_int32_t rtpoll_ddlinemiss
u_int32_t beffort_ddlinemiss
int32_t num_rtslots
int32_t num_nrtslots
int32_t num_befslots
u_int32_t num_adjust_slots
Event intr
Event uintr
Event sintr
Event rintr
Event rxintr_
Event wintr
qlist txq_
int qnp_
int qnb_
int max_qnp_
int max_qnb_
int min_qnp_
int min_qnb_
int queue_total_bytes_in
int queue_total_bytes_out
double util_total_bytes_US
double util_total_bytes_DS
int util_total_pkts_US
int util_total_pkts_DS
double util_bytes_US
double util_bytes_DS
int qlim_
double lastDumpTime
double lastUtilDumpTime
int(Mac802_16BS::* DOWNswitch [DOWNSTATES])(int, int, EventType, Packet *)

Static Private Attributes

static int next_flowid

Friends

class Map802_16Timer
class BsUcd802_16Timer
class BsRng802_16Timer
class BsSync802_16Timer
class BsTxPkt802_16Timer
class BsServiceFlowSendTimer
class BsToken802_16Timer

Detailed Description

Mac802_16 class


Constructor & Destructor Documentation

Mac802_16BS::Mac802_16BS (  ) 

Constructor

Mac802_16BS::~Mac802_16BS (  )  [inline]


Member Function Documentation

int Mac802_16BS::register_to_bs ( int  macaddr,
u_int16_t  priority,
u_char  def_up,
u_char  def_dn,
struct upstream_sflow UpEntry,
u_char  UpSize,
struct downstream_sflow DownEntry,
u_char  DownSize 
)

int Mac802_16BS::compare_priority ( priority_array_p  A,
priority_array_p  B 
)

int Mac802_16BS::command ( int  argc,
const char *const *  argv 
) [protected]

Reimplemented from Mac802_16.

void Mac802_16BS::SSRngHandler ( Event *  e  )  [inline, private, virtual]

Reimplemented from Mac802_16.

void Mac802_16BS::SSSndTimerHandler ( Event *  e  )  [inline, private, virtual]

Reimplemented from Mac802_16.

void Mac802_16BS::SSReqTimerHandler ( Event *  e  )  [inline, private, virtual]

Reimplemented from Mac802_16.

void Mac802_16BS::UnlockQueue (  )  [inline, private]

void Mac802_16BS::BsMapHandler ( Event *  e  )  [private, virtual]

This is called when a MAP is to be sent.

This is called when a MAP is to be sent.

Parameters:
e timer event

Reimplemented from Mac802_16.

void Mac802_16BS::BsSyncHandler ( Event *  e  )  [private, virtual]

Reimplemented from Mac802_16.

void Mac802_16BS::BsUcdHandler ( Event *  e  )  [private, virtual]

Reimplemented from Mac802_16.

void Mac802_16BS::BsRngHandler ( Event *  e  )  [private, virtual]

Reimplemented from Mac802_16.

void Mac802_16BS::BsWindowTimerHandler ( Event *  e  )  [private, virtual]

Reimplemented from Mac802_16.

void Mac802_16BS::RateControl ( Packet *  p,
int  cindex,
int  findex,
int  type 
) [private]

The type filed is used to indicate whether packet was picked from IFQ queue or not..If yes, then unlock the IFQ

double Mac802_16BS::getupdatedtokens ( int  ,
int   
) [private]

void Mac802_16BS::BsTokenHandler ( Event *   )  [private, virtual]

Reimplemented from Mac802_16.

void Mac802_16BS::insert_tokenlist ( double  ,
int  ,
int   
) [private]

void Mac802_16BS::sendUp ( Packet *  p  )  [private]

Packet coming up from PHY layer...

void Mac802_16BS::sendDown ( Packet *  p  )  [private]

Send packet down to the physical layer...only packets passed by upper layers will be sent by this function..No Management messages..

void Mac802_16BS::RecvFrame ( Packet *  p,
int  concat_flag 
) [private, virtual]

Called from the recvHandler when a frame has arrived on the upstream channel.

Needed to make sure we increment byte stats only once as this routine is reentered if the frame is concatonated static int RecvFrameEntered = 0; This routine will invoke HandleInData or HandleInMgmt ....

Parameters:
p A packet that already has been adjusted for all headers
concat_flag true if we are being reentered due to a concatonated frame. In this case, we've already counted the packet, but we need to count the size.

Reimplemented from Mac802_16.

void Mac802_16BS::PassDownstream ( Packet *  p  )  [private]

A simple ethernet PDU is carried in the 802_16 payload.. No Fragmentation or Concatenation

void Mac802_16BS::HandleInData ( Packet *  p,
int  cindex,
int  findex 
) [private]

overHeadBitsStripped is 1 if the packet already has had the OH bits taken off (This occurs when multiple frames are concatonated)

void Mac802_16BS::HandleInMgmt ( Packet *  p  )  [private]

This routine receives a Mgt message of the following types:

Note: if it's a concat frame- this means its a concat request.

Parameters:
p the packet

void Mac802_16BS::HandleFrag ( Packet *  p  )  [private]

Parameters:
p The frame containing a fragment

void Mac802_16BS::HandleConcat ( Packet *  ,
int  ,
int   
) [private]

void Mac802_16BS::ReleaseJobs (  )  [private]

Function called during the starting of simulation to release all the UGS jobs & VBR unicast req jobs

void Mac802_16BS::fill_job ( struct job node,
char  sclass,
char  type,
double  period,
u_int32_t  size,
double  release,
double  deadline,
u_int16_t  flow_id 
) [private]

Parameters:
node job queue element (i.e., a job)

void Mac802_16BS::InsertJob ( struct job node,
int  index 
) [private]

a job (bw request or periodic grant) in the job_list

void Mac802_16BS::HandleReq ( u_int16_t  req,
int  cindex,
int  findex,
bool  aggregate 
) [private]

Is called when there has been a request for bw from a SS. The routine creates a new job entry (node)

void Mac802_16BS::tune_parameters (  )  [private]

void Mac802_16BS::alloc_bw (  )  [private]

This is called when a MAP is to be sent. It allocates the bw.

void Mac802_16BS::delete_joblist ( int   )  [private]

void Mac802_16BS::PhUnsupress ( Packet *  ,
int  ,
int   
) [private]

void Mac802_16BS::ApplyPhs ( Packet *  ,
int  ,
int   
) [private]

void Mac802_16BS::MakeAperiodicAlloc ( struct job ,
mapptr  ,
int   
) [private]

void Mac802_16BS::AllocMemSSrecord (  )  [private]

void Mac802_16BS::MakePeriodicAllocation ( int  ,
mapptr  ,
double   
) [private]

void Mac802_16BS::ReOrder ( mapptr   )  [private]

void Mac802_16BS::MarkOtherSlots ( mapptr  t,
u_int32_t  num,
int  jk 
) [private]

This method marks the cr and mgt slots in the map. jk will be used as sid for distinguishing between various slots. a 0 says its mgt , a 1 says it CR.

Parameters:
t The map
num Number of slots.
jk Indicates if mgt or CR slots (value 0 and 1 respectively)

void Mac802_16BS::jobdrop ( mapptr   )  [private]

void Mac802_16BS::MarkGrantPending ( u_int32_t *  ,
double   
) [private]

void Mac802_16BS::SendMap (  )  [private]

This method creates the MAP message, creates the packet that contains the message and sends it.

u_int32_t Mac802_16BS::MarkUnusedSlots ( u_int32_t  num_slots  )  [private]

This method fills unused slots of the current map as unused. Or, if FILLWITHCONTOPS is defined, it fills with CR slots. The global mptr points to the current map.

Parameters:
num_slots Number of unused slots in the map
Returns:
The final number of unused slots (hopefully 0 if FILLWITHCONTOPS is on)

void Mac802_16BS::find_flowindex ( u_int16_t  ,
int *  ,
int *   
) [private]

void Mac802_16BS::SendFrame ( Packet *  p,
int  type 
) [private]

All frames that are to be sent over the DS channel will be sent down through this method.

void Mac802_16BS::BsSendHandler ( Event *   )  [private, virtual]

Reimplemented from Mac802_16.

void Mac802_16BS::dump_stats (  )  [private]

void Mac802_16BS::ParseExtHdr ( Packet *   )  [private]

void Mac802_16BS::dumpUGSJITTER ( char *  outputFile  )  [private]

This is called periodically (as of 3/26/05 it is piggybacked off the dumpBWBS mechanism). It computes a jitter statistic based on stats gathered since the last time this method was called. Each time a UGS allocation is made, the jitter is updated. This running total of jitter is simply the difference between the scheduled allocation time (based on the UGS grant interval) and the actual.

void Mac802_16BS::UpdateJitter ( int  ugs,
u_int16_t  flow_id,
double  t 
) [private]

Called when the BS has allocated BW for this job in the next map.

Parameters:
flow_id The flow or job to look at
t The allocated time (j->alloc_stime) of the job

int Mac802_16BS::find_size_map (  )  [private]

Calculate the size of MAP, all the IEs plus data-grant pending sizes..

int Mac802_16BS::NumContSlots ( mapptr  )  [private]

int Mac802_16BS::ChkQoSJobs ( double  ,
double   
) [private]

int Mac802_16BS::classify ( Packet *  p,
char  dir,
int *  find 
) [private]

Examines the packet and matches it to a flow in the SSRecord. The dir param determines if the upstream or downstream flow are looked at.

Parameters:
p The packet
dir DOWNSTREAM or UPSTREAM
find This ptr variable is set with the index of the flow table entry.
Returns:
The index of the matching ss's SSRecord table entry.

int Mac802_16BS::insert_mapjob ( int  ,
jptr  ,
u_int32_t *  ,
int   
) [private]

int Mac802_16BS::insert_mapjob ( struct job ,
u_int32_t *   
) [private]

int Mac802_16BS::find_ss ( int  t  )  [private]

Given the mac address parameter, this routine searches the SS table to return the SSRecord table index of the correct SS.

u_int32_t Mac802_16BS::MarkOtherAlloc ( u_int32_t  num_slots  )  [private]

This function will mark contention-slots and SM slots in map list

Parameters:
num_slots Number of slots in the map

u_int32_t Mac802_16BS::FillMap ( int  i,
int  ugs,
int  rt_poll,
int  nrt_poll,
int  be 
) [private]

This is called when a MAP is to be sent. The mptr contains the start of the map.

Returns:
The number of slots used in the allocation

mapptr Mac802_16BS::find_best_hole ( u_int32_t  n  )  [private]

This function returns a pointer to the map node where the best hole begins

Parameters:
n The number of slots that we need to allocate
Returns:
A ptr to a MAP

mapptr Mac802_16BS::find_next ( mapptr  m  )  [private]

Returns:
The next job in the map list.

mapptr Mac802_16BS::find_prv ( mapptr   )  [private]

mapptr Mac802_16BS::TryAlloc ( double  ,
u_int32_t   
) [private]

double Mac802_16BS::determine_deadline ( char  ,
int  ,
int   
) [private]

double Mac802_16BS::FitMap ( mapptr  j,
double  t 
) [private]

Try to fit job 'j' starting at 't'. Keep on trying till you reach the end of the MAP..

double Mac802_16BS::CalculateAckTime (  )  [private]

void Mac802_16BS::print_job_list ( int  i  )  [private]

Prints to stdout the contents of the desired job queue:

Parameters:
i Indicates which job list to print

void Mac802_16BS::print_map_list (  )  [private]

void Mac802_16BS::print_short_map_list ( Packet *  p  )  [private]

This method dumps all IE's associated with the map.

This method dumps all IE's associated with the map. The format: each MAP will begin with a code of 0 and have zero or more codes of 1,2,3.

Parameters:
p The packet that contains the map message

void Mac802_16BS::delete_maplist (  )  [private]

void Mac802_16BS::dumpBWBS ( char *  fileName  )  [private]

void Mac802_16BS::dumpFinalBSStats ( char *  fileName,
int  DSBW,
int  USBW 
) [private]

void Mac802_16BS::dumpFinalSIDStats ( int  cindex,
int  findex,
char *  fileName,
int  DSBW 
) [private]

void Mac802_16BS::dumpFinalDSSIDS ( char *  fileName,
int  DSBW 
) [private]

void Mac802_16BS::dump802_16QueueStats ( char *  outputFile,
int  channelBW 
) [private]

Called periodically by a TCL script to monitor the queue in the DS direction. This method also computes the utilization of the DS channel for each iteration.

void Mac802_16BS::dump802_16UtilStats ( char *  outputFile,
int  DSBW,
int  USBW 
) [private]

Called periodically by a TCL script to monitor the queue in the DS direction.

void Mac802_16BS::insert_pkt_at_Head ( Packet *  p,
int  cindex,
int  findex 
) [private]

This method inserts the packet in the downstream Tx queue. It inserts at the head of the queue. If the Q is full, the packet at the tail is removed.

Parameters:
p ptr to the frame
cindex Holds the SSRecord table index associated with the SS that is the target.
findex Holds the flow record entry index.

int Mac802_16BS::len_mgmtqueue (  )  [private]

Packet * Mac802_16BS::deque_pkt (  )  [private]

int Mac802_16BS::packetTrace ( Packet *  p,
int  direction 
) [private]

Parameters:
p A 802_16 frame
direction direction is 0 when sent DS and 1 when arrival at US
Returns:
a 0 on success.

void Mac802_16BS::HandleOutData ( Packet *  p,
int  cindex,
int  findex 
) [private]

Packet enters the BS for respective flow from this function

int Mac802_16BS::down_idle ( int  cindex,
int  findex,
EventType  e,
Packet *  p 
) [private]

Parameters:
tbindex denotes the service-flow entry on which packet has been mapped

int Mac802_16BS::down_decision ( int  ,
int  ,
EventType  ,
Packet *   
) [private]

int Mac802_16BS::down_tosend ( int  ,
int  ,
EventType  ,
Packet *   
) [private]

int Mac802_16BS::down_waitformap ( int  cindex,
int  findex,
EventType  e,
Packet *  p 
) [private]

This is called when certain events occur while a downstream flow is waiting for a MAP.

void Mac802_16BS::UpdateAllocationTable ( int  cindex,
int  findex 
) [private]

This function updates the allocation table for a service-flow when a MAP is received

void Mac802_16BS::UpdateJitter ( int  cindex,
int  findex 
) [private]

This is called whenever a MAP is received by a UGS flow. The statistic adds all error (scheduled allocation time from actual). Then the dumpUGSJitter method periodically obtains the mean jitter = runningJitter / samples

bool Mac802_16BS::insert_pkt ( Packet *  ,
int  ,
int   
) [private]

double Mac802_16BS::timer_expiration ( int  ,
int  ,
Packet *   
) [private]

Packet * Mac802_16BS::deque_pkt ( int  ,
int   
) [private]

void Mac802_16BS::insert_mgmtpkt ( Packet *  p,
int  cindex,
int  findex 
) [private]

This method inserts the packet in the downstream Tx queue. It drops the packet if it's full.

Parameters:
p ptr to the frame
cindex Holds the SSRecord table index associated with the SS that is the target.
findex Holds the flow record entry index.

void Mac802_16BS::insert_sndlist ( double  ,
int  ,
int   
) [private]

void Mac802_16BS::BsSndTimerHandler ( Event *  e  )  [private, virtual]

Send timer to data packets from QoS scheduling services

Reimplemented from Mac802_16.

void Mac802_16BS::alloc_ul_bw ( double  map_stime,
double  map_etime,
u_int32_t  num_slots 
) [private]

This is called when a MAP is to be sent. It allocates bw to the UL subframe.

void Mac802_16BS::alloc_dl_bw ( double  map_stime,
double  map_etime,
u_int32_t  num_slots 
) [private]

This is called when a MAP is to be sent. It allocates bw to the DL subframe.

void Mac802_16BS::checkDeadline ( double  map_stime,
double  subframe_duration,
u_int32_t &  num_slots 
) [private]

check which rtPS requests must be sent in the next frame in order to satisfy the maximum latency request.

void Mac802_16BS::checkMinimumBW ( u_int32_t &  num_slots,
priority_array_p pri_array,
int &  size 
) [private]

Assign priority values for the requests in the intermetiate queue to decide wich ones will be scheduled. The priority computation considers the min_bw request, backlogged BW and granted BW in order to provide the min_bw request of each flow. The higher priority requests will be inserted in the high queue.

Allocate the array. Warning. You should deallocate this array after using it.

void Mac802_16BS::MakeAllocation ( jptr  ,
int  ,
mapptr  ,
char  ,
int   
) [private]

int Mac802_16BS::CanBeSent ( aptr alloc_list,
Packet *  p 
) [private]

Parameters:
p The frame that already has been adjusted for all headers
Returns:
1, if this frame can be send; 0, if this frame can NOT be send


Friends And Related Function Documentation

friend class Map802_16Timer [friend]

friend class BsUcd802_16Timer [friend]

friend class BsRng802_16Timer [friend]

friend class BsSync802_16Timer [friend]

friend class BsTxPkt802_16Timer [friend]

friend class BsServiceFlowSendTimer [friend]

friend class BsToken802_16Timer [friend]


Member Data Documentation

struct ss_record* Mac802_16BS::SSRecord

u_int16_t Mac802_16BS::CurrIndexSSTable

double Mac802_16BS::window_ [private]

Map802_16Timer Mac802_16BS::mhMap_ [private]

BsRng802_16Timer Mac802_16BS::mhRng_ [private]

BsUcd802_16Timer Mac802_16BS::mhUcd_ [private]

BsSync802_16Timer Mac802_16BS::mhSync_ [private]

BsTxPkt802_16Timer Mac802_16BS::mhBsTxPkt_ [private]

BsServiceFlowSendTimer Mac802_16BS::mhBsSend_ [private]

BsUplinkSchedWindowTimer Mac802_16BS::mhWdw_ [private]

BsToken802_16Timer Mac802_16BS::mhToken_ [private]

tkptr Mac802_16BS::TokenList [private]

struct bs_conf_param Mac802_16BS::Conf_Table_ [private]

u_int16_t Mac802_16BS::SizeSSTable [private]

struct bs_statistics Mac802_16BS::SSStatistics_ [private]

struct job* Mac802_16BS::job_list[8] [private]

mapptr Mac802_16BS::mptr [private]

bs_sptr Mac802_16BS::BsSndList [private]

double Mac802_16BS::map_stime [private]

double Mac802_16BS::omap_stime [private]

double Mac802_16BS::map_etime [private]

double Mac802_16BS::omap_etime [private]

double Mac802_16BS::map_acktime [private]

double Mac802_16BS::AckTime [private]

double Mac802_16BS::max_slots_pmap [private]

double Mac802_16BS::next_map [private]

int Mac802_16BS::numIE [private]

int Mac802_16BS::map_lookahead [private]

int Mac802_16BS::MAP_LOOKAHEAD [private]

int Mac802_16BS::max_burst_slots [private]

int Mac802_16BS::rem_overhead [private]

int Mac802_16BS::MapPropDelay [private]

int Mac802_16BS::size_rtqueue [private]

int Mac802_16BS::avg_szrtqueue [private]

double Mac802_16BS::last_mrqtime [private]

int Mac802_16BS::size_bfqueue [private]

int Mac802_16BS::avg_szbfqueue [private]

double Mac802_16BS::last_mbfqtime [private]

int Mac802_16BS::num_bfreq [private]

int Mac802_16BS::avg_bfreq [private]

double Mac802_16BS::last_mbfreq [private]

int Mac802_16BS::num_rtreq [private]

int Mac802_16BS::avg_rtreq [private]

double Mac802_16BS::last_mrtreq [private]

double Mac802_16BS::last_dmptime [private]

u_int32_t Mac802_16BS::num_dgrant [private]

u_int32_t Mac802_16BS::num_contention [private]

u_int32_t Mac802_16BS::num_req [private]

u_int32_t Mac802_16BS::num_gpend [private]

u_int32_t Mac802_16BS::avg_dgrant [private]

u_int32_t Mac802_16BS::avg_contention [private]

u_int32_t Mac802_16BS::avg_req [private]

u_int32_t Mac802_16BS::avg_gpend [private]

u_int32_t Mac802_16BS::dropped_tokenq [private]

u_int32_t Mac802_16BS::dropped_dsq [private]

double Mac802_16BS::proportion [private]

u_char Mac802_16BS::contention_thrhold [private]

u_char Mac802_16BS::network_status [private]

u_int32_t Mac802_16BS::rtpoll_ddlinemiss [private]

u_int32_t Mac802_16BS::beffort_ddlinemiss [private]

int32_t Mac802_16BS::num_rtslots [private]

int32_t Mac802_16BS::num_nrtslots [private]

int32_t Mac802_16BS::num_befslots [private]

u_int32_t Mac802_16BS::num_adjust_slots [private]

Event Mac802_16BS::intr [private]

Event Mac802_16BS::uintr [private]

Event Mac802_16BS::sintr [private]

Event Mac802_16BS::rintr [private]

Event Mac802_16BS::rxintr_ [private]

Event Mac802_16BS::wintr [private]

int Mac802_16BS::next_flowid [static, private]

qlist Mac802_16BS::txq_ [private]

int Mac802_16BS::qnp_ [private]

int Mac802_16BS::qnb_ [private]

int Mac802_16BS::max_qnp_ [private]

int Mac802_16BS::max_qnb_ [private]

int Mac802_16BS::min_qnp_ [private]

int Mac802_16BS::min_qnb_ [private]

int Mac802_16BS::queue_total_bytes_in [private]

int Mac802_16BS::queue_total_bytes_out [private]

double Mac802_16BS::util_total_bytes_US [private]

double Mac802_16BS::util_total_bytes_DS [private]

int Mac802_16BS::util_total_pkts_US [private]

int Mac802_16BS::util_total_pkts_DS [private]

double Mac802_16BS::util_bytes_US [private]

double Mac802_16BS::util_bytes_DS [private]

int Mac802_16BS::qlim_ [private]

double Mac802_16BS::lastDumpTime [private]

double Mac802_16BS::lastUtilDumpTime [private]

int(Mac802_16BS::* Mac802_16BS::DOWNswitch[DOWNSTATES])(int, int, EventType, Packet *) [private]


The documentation for this class was generated from the following files:
Generated on Fri Feb 8 16:42:36 2008 for WiMAX by  doxygen 1.5.1