FWD link ARQ test case. More...
Inheritance diagram for SatFwdArqTestCase:
Collaboration diagram for SatFwdArqTestCase:Public Member Functions | |
| SatFwdArqTestCase () | |
| virtual | ~SatFwdArqTestCase () |
| void | NotifyTxOpportunity () |
| Notify Tx opportunity. More... | |
| void | Receive (Ptr< Packet > p, Mac48Address source, Mac48Address dest) |
| Receive packet and check that it is of correct size. More... | |
| void | ReceiveAck (Ptr< SatArqAckMessage > ack) |
| Receive ARQ ACK message. More... | |
| void | ReceivePdu (Ptr< Packet > p) |
| Receive packet. More... | |
| bool | SendAck (Ptr< SatControlMessage > msg, const Address &dest) |
| Send ARQ ACK message to the sender (source) More... | |
| void | TransmitPdus (uint32_t numPackets) |
| Transmit/enque a number of packets to GSE/SatQueue. More... | |
Private Member Functions | |
| virtual void | DoRun (void) |
| void | Initialize () |
| Initialize is called in DoRun method, since the test.py calls the test case constructors even if the test suite is not run. More... | |
Private Attributes | |
| double | m_ackErrorRatio |
| uint32_t | m_ackErrors |
| uint32_t | m_acks |
| Mac48Address | m_dest |
| double | m_errorProbabilityThreshold |
| uint8_t | m_flowIndex |
| uint32_t | m_frameBytes |
| double | m_frameErrorRatio |
| Ptr< SatGenericStreamEncapsulatorArq > | m_gse |
| uint32_t | m_numPackets |
| uint32_t | m_numTxOpportunities |
| Time | m_propagationDelay |
| std::vector< uint32_t > | m_rcvdPacketSizes |
| std::vector< uint32_t > | m_sentPacketSizes |
| Mac48Address | m_source |
| uint32_t | m_txErrors |
| Time | m_txoInterval |
| uint32_t | m_txs |
| Ptr< UniformRandomVariable > | m_unif |
FWD link ARQ test case.
Definition at line 369 of file satellite-arq-test.cc.
| SatFwdArqTestCase::SatFwdArqTestCase | ( | ) |
Definition at line 475 of file satellite-arq-test.cc.
|
virtual |
Definition at line 480 of file satellite-arq-test.cc.
References m_gse.
|
privatevirtual |
Definition at line 538 of file satellite-arq-test.cc.
References Initialize(), m_errorProbabilityThreshold, m_numPackets, m_rcvdPacketSizes, m_sentPacketSizes, NotifyTxOpportunity(), and TransmitPdus().
Here is the call graph for this function:
|
private |
Initialize is called in DoRun method, since the test.py calls the test case constructors even if the test suite is not run.
Definition at line 490 of file satellite-arq-test.cc.
References m_ackErrorRatio, m_ackErrors, m_acks, m_dest, m_errorProbabilityThreshold, m_flowIndex, m_frameBytes, m_frameErrorRatio, m_gse, m_numPackets, m_numTxOpportunities, m_propagationDelay, m_source, m_txErrors, m_txoInterval, m_txs, m_unif, Receive(), and SendAck().
Referenced by DoRun().
Here is the call graph for this function:
Here is the caller graph for this function:| void SatFwdArqTestCase::NotifyTxOpportunity | ( | ) |
Notify Tx opportunity.
Create TxOpportunities for GSE and call receive method to do decapsuling, defragmentation and reassembly.
Definition at line 584 of file satellite-arq-test.cc.
References m_frameBytes, m_gse, m_numTxOpportunities, m_propagationDelay, m_txErrors, m_txoInterval, m_txs, and ReceivePdu().
Referenced by DoRun().
Here is the call graph for this function:
Here is the caller graph for this function:| void SatFwdArqTestCase::Receive | ( | Ptr< Packet > | p, |
| Mac48Address | source, | ||
| Mac48Address | dest | ||
| ) |
Receive packet and check that it is of correct size.
| p | Ptr to packet |
| source | Source MAC address |
| dest | Destination MAC address |
Definition at line 677 of file satellite-arq-test.cc.
References m_rcvdPacketSizes.
Referenced by Initialize().
Here is the caller graph for this function:| void SatFwdArqTestCase::ReceiveAck | ( | Ptr< SatArqAckMessage > | ack | ) |
Receive ARQ ACK message.
| ack | Acknowledgement |
Definition at line 671 of file satellite-arq-test.cc.
References m_gse.
Referenced by SendAck().
Here is the caller graph for this function:| void SatFwdArqTestCase::ReceivePdu | ( | Ptr< Packet > | p | ) |
Receive packet.
| p | Packet |
Definition at line 645 of file satellite-arq-test.cc.
References m_gse.
Referenced by NotifyTxOpportunity().
Here is the caller graph for this function:| bool SatFwdArqTestCase::SendAck | ( | Ptr< SatControlMessage > | msg, |
| const Address & | dest | ||
| ) |
Send ARQ ACK message to the sender (source)
| msg | Control message |
| dest | Destination MAC address |
Definition at line 651 of file satellite-arq-test.cc.
References m_ackErrors, m_acks, m_propagationDelay, and ReceiveAck().
Referenced by Initialize().
Here is the call graph for this function:
Here is the caller graph for this function:| void SatFwdArqTestCase::TransmitPdus | ( | uint32_t | numPackets | ) |
Transmit/enque a number of packets to GSE/SatQueue.
| numPackets | Number of packets |
Definition at line 571 of file satellite-arq-test.cc.
References m_dest, m_gse, m_sentPacketSizes, and m_unif.
Referenced by DoRun().
Here is the caller graph for this function:
|
private |
Definition at line 446 of file satellite-arq-test.cc.
Referenced by Initialize().
|
private |
Definition at line 466 of file satellite-arq-test.cc.
Referenced by Initialize(), and SendAck().
|
private |
Definition at line 465 of file satellite-arq-test.cc.
Referenced by Initialize(), and SendAck().
|
private |
Definition at line 432 of file satellite-arq-test.cc.
Referenced by Initialize(), and TransmitPdus().
|
private |
Definition at line 458 of file satellite-arq-test.cc.
Referenced by DoRun(), and Initialize().
|
private |
Definition at line 453 of file satellite-arq-test.cc.
Referenced by Initialize().
|
private |
Definition at line 438 of file satellite-arq-test.cc.
Referenced by Initialize(), and NotifyTxOpportunity().
|
private |
Definition at line 445 of file satellite-arq-test.cc.
Referenced by Initialize().
|
private |
Definition at line 425 of file satellite-arq-test.cc.
Referenced by ~SatFwdArqTestCase(), Initialize(), NotifyTxOpportunity(), ReceiveAck(), ReceivePdu(), and TransmitPdus().
|
private |
Definition at line 435 of file satellite-arq-test.cc.
Referenced by DoRun(), and Initialize().
|
private |
Definition at line 442 of file satellite-arq-test.cc.
Referenced by Initialize(), and NotifyTxOpportunity().
|
private |
Definition at line 450 of file satellite-arq-test.cc.
Referenced by Initialize(), NotifyTxOpportunity(), and SendAck().
|
private |
Definition at line 472 of file satellite-arq-test.cc.
|
private |
Definition at line 469 of file satellite-arq-test.cc.
Referenced by DoRun(), and TransmitPdus().
|
private |
Definition at line 431 of file satellite-arq-test.cc.
Referenced by Initialize().
|
private |
Definition at line 464 of file satellite-arq-test.cc.
Referenced by Initialize(), and NotifyTxOpportunity().
|
private |
Definition at line 461 of file satellite-arq-test.cc.
Referenced by Initialize(), and NotifyTxOpportunity().
|
private |
Definition at line 463 of file satellite-arq-test.cc.
Referenced by Initialize(), and NotifyTxOpportunity().
|
private |
Definition at line 428 of file satellite-arq-test.cc.
Referenced by Initialize(), and TransmitPdus().