#include <mac-802_16.h>
Inheritance diagram for Mac802_16:

Public Member Functions | |
| Mac802_16 () | |
| virtual | ~Mac802_16 () |
| virtual void | BsUcdHandler (Event *e) |
| virtual void | BsSyncHandler (Event *e) |
| virtual void | BsRngHandler (Event *e) |
| virtual void | BsMapHandler (Event *e) |
| virtual void | SSRngHandler (Event *e) |
| virtual void | SSSndTimerHandler (Event *e) |
| virtual void | SSReqTimerHandler (Event *e) |
| virtual void | RecvFrame (Packet *p, int i) |
| virtual void | BsSendHandler (Event *e) |
| virtual void | BsSndTimerHandler (Event *e) |
| virtual void | BsWindowTimerHandler (Event *e) |
| virtual void | BsTokenHandler (Event *e) |
| int | command (int argc, const char *const *argv) |
| void | recvHandler (Event *e) |
| void | sendHandler (Event *e) |
| void | recv (Packet *p, Handler *h) |
| void | configure_upstream () |
| void | set_bit (u_char *, int, int) |
| void | dump_pkt (Packet *) |
| char | ClassifyDataMgmt (Packet *) |
| int | is_idle () |
| int | match (Packet *, struct flow_classifier) |
| int | bit_on (u_char, int) |
| u_int32_t | calculate_slots (double, double) |
| u_int32_t | power (u_int32_t, u_int32_t) |
| double | TX_Time (Packet *p, int) |
| Packet * | AllocPkt (int) |
| void | insert_alloclist (aptr &, u_int16_t, double, double, u_int16_t, u_int32_t) |
| int | CanBeSent (aptr &, Packet *, u_int32_t) |
| int | len_queue (plist) |
| int | CanErtPSBeSent (aptr &, Packet *) |
Public Attributes | |
| TxPkt802_16Timer | mhTxPkt_ |
| RxPkt802_16Timer | mhRxPkt_ |
| upstream_channel | upchannel |
| downstream_channel | downchannel |
| char | collision |
| u_int16_t | bytes_pminislot |
| u_int32_t | minislots_psec |
| double | size_mslots |
| u_int16_t | size_ureqgrant |
| u_int32_t | avg_pkts |
| u_int32_t | avg_bytes |
| u_int32_t | num_pkts |
| double | num_bytes |
| u_int32_t | total_num_sent_pkts |
| double | total_num_sent_bytes |
| u_int32_t | total_num_mgt_pkts_US |
| u_int32_t | total_num_rng_pkts_US |
| u_int32_t | total_num_concat_pkts_US |
| u_int32_t | total_num_frag_pkts_US |
| u_int32_t | total_num_req_pkts_US |
| u_int32_t | total_num_plaindata_pkts_US |
| u_int32_t | total_num_concatdata_pkts_US |
| u_int32_t | total_num_frames_US |
| u_int32_t | total_num_BE_pkts_US |
| u_int32_t | total_num_RTVBR_pkts_US |
| u_int32_t | total_num_UGS_pkts_US |
| u_int32_t | total_num_OTHER_pkts_US |
| u_int32_t | total_num_rx_pkts |
| double | total_num_rx_bytes |
| double | total_num_BW_bytesUP |
| double | total_num_BW_bytesDOWN |
| double | total_num_appbytesUS |
| double | total_num_appbytesDS |
| u_int32_t | total_packets_dropped |
| double | last_BWCalcTime |
| double | last_rtime |
| u_int32_t | avg_mgmtpkts |
| u_int32_t | num_mgmtpkts |
| u_int32_t | avg_mgmtbytes |
| u_int32_t | num_mgmtbytes |
| double | last_mmgmttime |
| MacState | rx_state_ |
| MacState | tx_state_ |
| int | tx_active_ |
Static Public Attributes | |
| static int | lan_num |
| static Mac802_16BS * | bs_arr [NUM_802_16_LANS] |
Friends | |
| class | TxPkt802_16Timer |
| class | RxPkt802_16Timer |
| Mac802_16::Mac802_16 | ( | ) |
Constructor function
| virtual Mac802_16::~Mac802_16 | ( | ) | [inline, virtual] |
| virtual void Mac802_16::BsUcdHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| virtual void Mac802_16::BsSyncHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| virtual void Mac802_16::BsRngHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| virtual void Mac802_16::BsMapHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| virtual void Mac802_16::SSRngHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| virtual void Mac802_16::SSSndTimerHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| virtual void Mac802_16::SSReqTimerHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| virtual void Mac802_16::RecvFrame | ( | Packet * | p, | |
| int | i | |||
| ) | [inline, virtual] |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| virtual void Mac802_16::BsSendHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| virtual void Mac802_16::BsSndTimerHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS.
| virtual void Mac802_16::BsWindowTimerHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS.
| virtual void Mac802_16::BsTokenHandler | ( | Event * | e | ) | [inline, virtual] |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| int Mac802_16::command | ( | int | argc, | |
| const char *const * | argv | |||
| ) |
Reimplemented in Mac802_16BS, and Mac802_16SS.
| void Mac802_16::recvHandler | ( | Event * | e | ) |
| void Mac802_16::sendHandler | ( | Event * | e | ) |
| void Mac802_16::recv | ( | Packet * | p, | |
| Handler * | h | |||
| ) |
To handle incoming packet.
| void Mac802_16::configure_upstream | ( | ) |
To configure the mini-slot parameters
| void Mac802_16::set_bit | ( | u_char * | , | |
| int | , | |||
| int | ||||
| ) |
| void Mac802_16::dump_pkt | ( | Packet * | ) |
| char Mac802_16::ClassifyDataMgmt | ( | Packet * | p | ) |
This returns a 0 if this frame contains data
else it returns a 1 in which case it contains a MAC specific header (i.e., request)
| int Mac802_16::is_idle | ( | ) |
Test if the channel is idle.
| int Mac802_16::match | ( | Packet * | , | |
| struct | flow_classifier | |||
| ) |
| int Mac802_16::bit_on | ( | u_char | , | |
| int | ||||
| ) |
| u_int32_t Mac802_16::calculate_slots | ( | double | stime, | |
| double | etime | |||
| ) |
| stime | starting time for the map | |
| etime | ending time |
| u_int32_t Mac802_16::power | ( | u_int32_t | bs, | |
| u_int32_t | in | |||
| ) |
Calculate bs raised to in
| double Mac802_16::TX_Time | ( | Packet * | p, | |
| int | ||||
| ) |
| Packet * Mac802_16::AllocPkt | ( | int | ) |
| void Mac802_16::insert_alloclist | ( | aptr & | , | |
| u_int16_t | , | |||
| double | , | |||
| double | , | |||
| u_int16_t | , | |||
| u_int32_t | ||||
| ) |
| int Mac802_16::CanBeSent | ( | aptr & | , | |
| Packet * | , | |||
| u_int32_t | ||||
| ) |
| int Mac802_16::len_queue | ( | plist | ) |
| int Mac802_16::CanErtPSBeSent | ( | aptr & | alloc_list, | |
| Packet * | p | |||
| ) |
Check if there is a grant for the ertPS service and if this grant is greater than the packet size.
| p,: | The frame that already has been adjusted for all headers |
friend class TxPkt802_16Timer [friend] |
friend class RxPkt802_16Timer [friend] |
| char Mac802_16::collision |
| u_int16_t Mac802_16::bytes_pminislot |
| u_int32_t Mac802_16::minislots_psec |
| double Mac802_16::size_mslots |
| u_int16_t Mac802_16::size_ureqgrant |
| u_int32_t Mac802_16::avg_pkts |
| u_int32_t Mac802_16::avg_bytes |
| u_int32_t Mac802_16::num_pkts |
| double Mac802_16::num_bytes |
| u_int32_t Mac802_16::total_num_sent_pkts |
| u_int32_t Mac802_16::total_num_mgt_pkts_US |
| u_int32_t Mac802_16::total_num_rng_pkts_US |
| u_int32_t Mac802_16::total_num_concat_pkts_US |
| u_int32_t Mac802_16::total_num_frag_pkts_US |
| u_int32_t Mac802_16::total_num_req_pkts_US |
| u_int32_t Mac802_16::total_num_plaindata_pkts_US |
| u_int32_t Mac802_16::total_num_concatdata_pkts_US |
| u_int32_t Mac802_16::total_num_frames_US |
| u_int32_t Mac802_16::total_num_BE_pkts_US |
| u_int32_t Mac802_16::total_num_RTVBR_pkts_US |
| u_int32_t Mac802_16::total_num_UGS_pkts_US |
| u_int32_t Mac802_16::total_num_OTHER_pkts_US |
| u_int32_t Mac802_16::total_num_rx_pkts |
| u_int32_t Mac802_16::total_packets_dropped |
| double Mac802_16::last_BWCalcTime |
| double Mac802_16::last_rtime |
| u_int32_t Mac802_16::avg_mgmtpkts |
| u_int32_t Mac802_16::num_mgmtpkts |
| u_int32_t Mac802_16::avg_mgmtbytes |
| u_int32_t Mac802_16::num_mgmtbytes |
| double Mac802_16::last_mmgmttime |
int Mac802_16::lan_num [static] |
Mac802_16BS * Mac802_16::bs_arr [static] |
| MacState Mac802_16::rx_state_ |
| MacState Mac802_16::tx_state_ |
1.5.1