aboutsummaryrefslogtreecommitdiffstats
path: root/libtransport/src/hicn/transport/protocols/rtc.h
diff options
context:
space:
mode:
Diffstat (limited to 'libtransport/src/hicn/transport/protocols/rtc.h')
-rw-r--r--libtransport/src/hicn/transport/protocols/rtc.h16
1 files changed, 8 insertions, 8 deletions
diff --git a/libtransport/src/hicn/transport/protocols/rtc.h b/libtransport/src/hicn/transport/protocols/rtc.h
index 58c143988..0bb9d9b2e 100644
--- a/libtransport/src/hicn/transport/protocols/rtc.h
+++ b/libtransport/src/hicn/transport/protocols/rtc.h
@@ -121,6 +121,10 @@ class RTCTransportProtocol : public TransportProtocol, public Reassembly {
void scheduleNextInterests() override;
void scheduleAppNackRtx(std::vector<uint32_t> &nacks);
void onTimeout(Interest::Ptr &&interest) override;
+ // checkIfProducerIsActive: return true if we need to schedule an interest
+ // immediatly after, false otherwise (this happens when the producer socket
+ // is not active)
+ bool checkIfProducerIsActive(const ContentObject &content_object);
void onNack(const ContentObject &content_object);
void onContentObject(Interest::Ptr &&interest,
ContentObject::Ptr &&content_object) override;
@@ -142,18 +146,11 @@ class RTCTransportProtocol : public TransportProtocol, public Reassembly {
// controller var
std::chrono::steady_clock::time_point lastRoundBegin_;
- // bool allPacketsInSync_;
- // unsigned numberOfRoundsInSync_;
- // unsigned numberOfCatchUpRounds_;
- // bool catchUpPhase_;
unsigned currentState_;
- // uint32_t inProduction_;
-
// cwin var
uint32_t currentCWin_;
uint32_t maxCWin_;
- // uint32_t previousCWin_;
// names/packets var
uint32_t actualSegment_;
@@ -167,6 +164,10 @@ class RTCTransportProtocol : public TransportProtocol, public Reassembly {
// application for pakets for which we already got a
// past NACK by the producer these packet are too old,
// they will never be retrived
+ bool nack_timer_used_;
+ std::unique_ptr<asio::steady_timer> nack_timer_; // timer used to schedule
+ // a nack retransmission in
+ // of inactive prod socket
uint32_t modMask_;
@@ -185,7 +186,6 @@ class RTCTransportProtocol : public TransportProtocol, public Reassembly {
// vector
std::unordered_map<uint32_t, std::shared_ptr<RTCDataPath>> pathTable_;
uint32_t roundCounter_;
- // std::vector<uint64_t> minRTTwin_;
uint64_t minRtt_;
// CC var