Browse Source

fix 0 delay issue

Jens Keim 5 years ago
parent
commit
0e25f772ec

+ 2 - 2
code/Attack/MembersMgmtCommAttack.py

@@ -358,12 +358,12 @@ class MembersMgmtCommAttack(BaseAttack.BaseAttack):
                     if req_msg.src in external_ids or req_msg.dst in external_ids and avg_delay_external:
                         # external communication
                         external_dist = Lea.fromSeq(avg_delay_external)
-                        respns_msg.time = req_msg.time + float(external_dist.random()) * 0.001
+                        respns_msg.time = req_msg.time + float(external_dist.random()) * 0.000001
 
                     else:
                         # local communication
                         local_dist = Lea.fromSeq(avg_delay_local)
-                        respns_msg.time = req_msg.time + float(local_dist.random()) * 0.001
+                        respns_msg.time = req_msg.time + float(local_dist.random()) * 0.000001
 
                     updated_msgs.append(respns_msg)
                     last_response[(req_msg.src, req_msg.dst)] = respns_msg.time

+ 3 - 2
code/Core/Statistics.py

@@ -868,8 +868,9 @@ class Statistics:
 
         conv_delays = delay_db.process_user_defined_query(
             "SELECT ipAddressA, ipAddressB, avgDelay FROM conv_statistics")
-        conv_delays += delay_db.process_user_defined_query(
-            "SELECT ipAddressA, ipAddressB, avgDelay FROM conv_statistics_extended")
+        if len(conv_delays) < 2:
+            conv_delays = delay_db.process_user_defined_query(
+                "SELECT ipAddressA, ipAddressB, avgDelay FROM conv_statistics_extended")
 
         if conv_delays:
             external_conv = []

+ 1 - 1
code/Test/test_MembersMgmtCommAttack.py

@@ -1,7 +1,7 @@
 import Test.ID2TAttackTest as Test
 import ID2TLib.Utility as Util
 
-sha_default = '10080a8fcbee78a2fa58e394ca753ce547822a0a7e8f8f8903abb80ba29c5ae5'
+sha_default = 'cc4ec4dec2e9570512eb977e56ebd2793f95c9229ebb6fa640829e1839b016af'
 
 
 class UnitTestMembersMgmtCommAttack(Test.ID2TAttackTest):

+ 2 - 2
code_boost/src/cxx/statistics_db.cpp

@@ -565,7 +565,7 @@ void statistics_db::writeStatisticsConvExt(std::unordered_map<convWithProt, entr
             int minDelay = -1;
             int maxDelay = -1;
 
-            if (e.pkts_count > 1 && f.protocol == "TCP"){
+            if (e.pkts_count > 1 && (f.protocol == "UDP" || f.protocol == "TCP")){
                 for (int i = 0; (unsigned) i < e.interarrival_time.size(); i++) {
                     sumDelay += e.interarrival_time[i].count();
                     if (maxDelay < e.interarrival_time[i].count())
@@ -596,7 +596,7 @@ void statistics_db::writeStatisticsConvExt(std::unordered_map<convWithProt, entr
                 if ((f.protocol == "UDP" || f.protocol == "TCP") && e.pkts_count < 2)
                     query.bind(8);
                 else
-                    query.bind(8, static_cast<int>(e.avg_interarrival_time.count()));
+                    query.bind(8, abs(static_cast<int>(e.avg_interarrival_time.count())));
 
                 if (minDelay == -1)
                     query.bind(9);