55 #define DEFAULT_INIT_SEQUENCE_NUMBER 1
60 class DTP :
public cSimpleModule
248 void sendAckFlowPDU(
unsigned int seqNum = 0,
bool seqNumValid =
false);
void runRTTEstimatorPolicy()
bool runInitialSeqNumPolicy()
void rcvrBufferStateChange()
void generateDTPDU(UserDataField *userDataField)
void sendReliableControlPDU()
Class representing flow object with attributes from specs.
virtual void handleMessage(cMessage *msg)
void trySendGenPDUs(std::vector< DataTransferPDU * > *pduQ)
void fillRendezvousPDU(RendezvousPDU *rendezPDU)
void setPduDroppingEnabled(bool pduDroppingEnabled)
void handleQueueInfo(QueueInfo *queueInfo)
void resetSenderInactivTimer()
void handleDTPRcvrInactivityTimer(RcvrInactivityTimer *timer)
simsignal_t sigStatDTPRecvSeqNum
RcvrInactivityPolicyBase * rcvrInactivityPolicy
void setPDUHeader(PDU *pdu)
RTTEstimatorPolicyBase * rttEstimatorPolicy
void handleDTPATimer(ATimer *timer)
void notifyStartSending()
void handleMsgFromRMT(PDU *msg)
void svUpdate(unsigned int seqNum)
simsignal_t sigStatDTPSentSeqNum
void fillControlAckPDU(ControlAckPDU *ctrlAckPdu)
void runRcvrInactivityTimerPolicy()
void addPDUToReassemblyQ(DataTransferPDU *pdu)
void handleRendezvousTimer(DTCPRendezvousTimer *timer)
void fillFlowControlPDU(FlowControlPDU *flowControlPdu)
Connection identifier as defined in specifications.
void rendezvousCondition()
SenderInactivityTimer * senderInactivityTimer
void notifyAboutInactivity()
void handleInterrupterTimer(TheInterrupterTimer *msg)
void schedule(DTPTimers *timer, double time=0.0)
void sduProtection(SDU *sdu)
void startATimer(unsigned int seqNum)
bool isDuplicate(unsigned int seqNum)
Monitoring and adjustment of IPC process operations .
void handleDTPSenderInactivityTimer(SenderInactivityTimer *timer)
int numInitStages() const
const QoSCube * getQoSCube() const
InitialSeqNumPolicyBase * initialSeqNumPolicy
unsigned int delimit(SDUData *sduData)
void runSenderInactivityTimerPolicy()
bool commonRcvControl(ControlPDU *pdu)
virtual void initialize(int step)
void handleControlPDUFromRMT(ControlPDU *pdu)
Relaying and Multiplexing Task .
void handleQueueInfoFromSocket(QueueInfo *queueInfo)
simsignal_t sigStatDTPRTT
cModule * createPolicyModule(const char *prefix, const char *name)
simsignal_t sigStatDTPClosedWinQ
RcvrInactivityTimer * rcvrInactivityTimer
void sendAckFlowPDU(unsigned int seqNum=0, bool seqNumValid=false)
SenderInactivityPolicyBase * senderInactivityPolicy
Class representing QoSCube with all its properties that is primarily used by FA, RMT and RA Specifica...
void handleMsgFromUp(UserDataField *userDataField)
simsignal_t sigEFCPStartSending
void getSDUFromQ(SDU *sdu)
std::set< unsigned int > sequencingQ
void sendAckOnlyPDU(unsigned int seqNum)
void initSignalsAndListeners()
void handleQueueInfoFromRMT(QueueInfo *queueInfo)
std::vector< UserDataField * > userDataFieldQOut
void runCongestionNotificationPolicy()
void setFlow(const Flow *flow)
unsigned int getAllowableGap()
void cancelATimer(unsigned int seqNum)
void setQoSCube(const QoSCube *qosCube)
bool setDRFInPDU(bool override)
void setConnId(const ConnectionId &connId)
unsigned int getFlowControlRightWinEdge()
void flushAllQueuesAndPrepareToDie()
void handleDataTransferPDUFromRMT(DataTransferPDU *pdu)
simsignal_t sigEFCPStahpSending
void setState(DTPState *state)
std::vector< ATimer * > aTimerQ
void notifyAboutUnableMaintain()
void flushReassemblyPDUQ()
void clearClosedWindowQ()