diff options
author | Matthias Wachs <wachs@net.in.tum.de> | 2013-11-18 14:51:35 +0000 |
---|---|---|
committer | Matthias Wachs <wachs@net.in.tum.de> | 2013-11-18 14:51:35 +0000 |
commit | dd4b523b483aea04b7eccec95cfd00218aa51233 (patch) | |
tree | 23151cbbe5914ff19ccb08f66ac6d2410d81df50 /src/ats/gnunet-service-ats_addresses.c | |
parent | a23131f1f81524c774869d978766f5ff46e230c2 (diff) | |
download | gnunet-dd4b523b483aea04b7eccec95cfd00218aa51233.tar.gz gnunet-dd4b523b483aea04b7eccec95cfd00218aa51233.zip |
improved evalution
Diffstat (limited to 'src/ats/gnunet-service-ats_addresses.c')
-rw-r--r-- | src/ats/gnunet-service-ats_addresses.c | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/ats/gnunet-service-ats_addresses.c b/src/ats/gnunet-service-ats_addresses.c index e1042b64b..33fac8a06 100644 --- a/src/ats/gnunet-service-ats_addresses.c +++ b/src/ats/gnunet-service-ats_addresses.c | |||
@@ -1333,6 +1333,10 @@ GAS_addresses_evaluate_assignment (struct GAS_Addresses_Handle *ah) | |||
1333 | float quality_application_requirements = 0.0; | 1333 | float quality_application_requirements = 0.0; |
1334 | float guq = 0.0; | 1334 | float guq = 0.0; |
1335 | 1335 | ||
1336 | int include_requests; | ||
1337 | int include_utilization; | ||
1338 | int include_requirements; | ||
1339 | |||
1336 | /* Variable related to requests */ | 1340 | /* Variable related to requests */ |
1337 | unsigned int requests_pending; | 1341 | unsigned int requests_pending; |
1338 | unsigned int requests_fulfilled; | 1342 | unsigned int requests_fulfilled; |
@@ -1362,9 +1366,15 @@ GAS_addresses_evaluate_assignment (struct GAS_Addresses_Handle *ah) | |||
1362 | 1366 | ||
1363 | } | 1367 | } |
1364 | if (requests_pending > 0) | 1368 | if (requests_pending > 0) |
1369 | { | ||
1365 | quality_requests_fulfilled = (float) requests_fulfilled / requests_pending; | 1370 | quality_requests_fulfilled = (float) requests_fulfilled / requests_pending; |
1371 | include_requests = GNUNET_YES; | ||
1372 | } | ||
1366 | else | 1373 | else |
1374 | { | ||
1367 | quality_requests_fulfilled = 0.0; | 1375 | quality_requests_fulfilled = 0.0; |
1376 | include_requests = GNUNET_NO; | ||
1377 | } | ||
1368 | GNUNET_log (GNUNET_ERROR_TYPE_INFO, "%u pending requests, %u requests fullfilled\n", | 1378 | GNUNET_log (GNUNET_ERROR_TYPE_INFO, "%u pending requests, %u requests fullfilled\n", |
1369 | requests_pending, requests_fulfilled); | 1379 | requests_pending, requests_fulfilled); |
1370 | 1380 | ||
@@ -1394,14 +1404,27 @@ GAS_addresses_evaluate_assignment (struct GAS_Addresses_Handle *ah) | |||
1394 | } | 1404 | } |
1395 | } | 1405 | } |
1396 | if (0 < network_count) | 1406 | if (0 < network_count) |
1407 | { | ||
1397 | quality_bandwidth_utilization_total /= network_count; | 1408 | quality_bandwidth_utilization_total /= network_count; |
1409 | include_utilization = GNUNET_YES; | ||
1410 | } | ||
1398 | else | 1411 | else |
1412 | { | ||
1399 | quality_bandwidth_utilization_total = 0.0; | 1413 | quality_bandwidth_utilization_total = 0.0; |
1414 | include_utilization = GNUNET_NO; | ||
1415 | } | ||
1400 | 1416 | ||
1401 | /* 3) How well does selection match application requirements */ | 1417 | /* 3) How well does selection match application requirements */ |
1418 | /* TODO */ | ||
1419 | include_requirements = GNUNET_NO; | ||
1402 | 1420 | ||
1403 | /* GUQ */ | 1421 | /* GUQ */ |
1404 | guq = (quality_requests_fulfilled + quality_bandwidth_utilization_total + quality_application_requirements) /3; | 1422 | |
1423 | if (include_requests + include_utilization + include_requirements > 0) | ||
1424 | guq = (quality_requests_fulfilled + quality_bandwidth_utilization_total + quality_application_requirements) / | ||
1425 | (include_requests + include_utilization + include_requirements); | ||
1426 | else | ||
1427 | guq = 0.0; | ||
1405 | 1428 | ||
1406 | GNUNET_log (GNUNET_ERROR_TYPE_INFO, | 1429 | GNUNET_log (GNUNET_ERROR_TYPE_INFO, |
1407 | "Requests fulfilled %.3f bandwidth utilized %.3f application preferences met %.3f => %.3f\n", | 1430 | "Requests fulfilled %.3f bandwidth utilized %.3f application preferences met %.3f => %.3f\n", |