[HICN-437] concurrency problem in rtc producer socket 28/23828/1
authormichele papalini <micpapal@cisco.com>
Fri, 6 Dec 2019 10:13:11 +0000 (11:13 +0100)
committermichele papalini <micpapal@cisco.com>
Fri, 6 Dec 2019 10:13:11 +0000 (11:13 +0100)
Signed-off-by: michele papalini <micpapal@cisco.com>
Change-Id: I629914f48e00814796f16b201e03549e9c7941bd

libtransport/src/hicn/transport/interfaces/rtc_socket_producer.cc
libtransport/src/hicn/transport/protocols/rtc.h

index f1057aa..bb93e05 100644 (file)
@@ -183,8 +183,8 @@ void RTCProducerSocket::produce(std::unique_ptr<utils::MemBuf> &&buffer) {
   // remove interests from the interest cache if it exists
   // this generates nacks that will tell to the consumer
   // that a new data packet was produced
+  utils::SpinLock::Acquire locked(interests_cache_lock_);
   if (!seqs_map_.empty()) {
-    utils::SpinLock::Acquire locked(interests_cache_lock_);
     for (auto it = seqs_map_.begin(); it != seqs_map_.end(); it++) {
       if (it->first != old_curr) sendNack(it->first);
     }
index 697459b..2b9ed10 100644 (file)
@@ -55,8 +55,8 @@
 #define HICN_INITIAL_CWIN 1           // packets
 #define HICN_INITIAL_CWIN_MAX 100000  // packets
 #define HICN_MIN_CWIN 10               // packets
-#define HICN_WIN_INCREASE_FACTOR 1.1
-#define HICN_WIN_DECREASE_FACTOR 0.8
+#define HICN_WIN_INCREASE_FACTOR 1.5
+#define HICN_WIN_DECREASE_FACTOR 0.9
 
 // statistics constants
 #define HICN_BANDWIDTH_SLACK_FACTOR 1.8