[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r25753 - gnunet/src/ats
From: |
gnunet |
Subject: |
[GNUnet-SVN] r25753 - gnunet/src/ats |
Date: |
Fri, 11 Jan 2013 11:37:14 +0100 |
Author: wachs
Date: 2013-01-11 11:37:13 +0100 (Fri, 11 Jan 2013)
New Revision: 25753
Modified:
gnunet/src/ats/gnunet-service-ats_addresses_simplistic.c
Log:
docu
Modified: gnunet/src/ats/gnunet-service-ats_addresses_simplistic.c
===================================================================
--- gnunet/src/ats/gnunet-service-ats_addresses_simplistic.c 2013-01-11
09:51:47 UTC (rev 25752)
+++ gnunet/src/ats/gnunet-service-ats_addresses_simplistic.c 2013-01-11
10:37:13 UTC (rev 25753)
@@ -1093,18 +1093,20 @@
* So we can calculate a relative preference value fr_p_i:
*
* f_k_p_i_rel = (f_t + f_p_i) / f_t
- * f_k_p_i_rel = [1..2]
+ * f_k_p_i_rel = [1..2], default 1.0
* }
* f_p_i_rel = sum (f_k_p_i_rel) / #k
* }
*
**/
+ /* Find preference client */
for (cur = s->pc_head; NULL != cur; cur = cur->next)
{
if (client == cur->client)
break;
}
+ /* Not found: create new preference client */
if (NULL == cur)
{
cur = GNUNET_malloc (sizeof (struct PreferenceClient));
@@ -1112,23 +1114,28 @@
GNUNET_CONTAINER_DLL_insert (s->pc_head, s->pc_tail, cur);
}
+ /* Find entry for peer */
for (p = cur->p_head; NULL != p; p = p->next)
if (0 == memcmp (&p->id, peer, sizeof (p->id)))
break;
+ /* Not found: create new peer entry */
if (NULL == p)
{
- /* Add a new peer entry */
p = GNUNET_malloc (sizeof (struct PreferencePeer));
p->id = (*peer);
for (i = 0; i < GNUNET_ATS_PreferenceCount; i++)
{
+ /* Default value per peer absolut preference for a quality:
+ * No value set, so absolute preference 0 */
p->f[i] = 0.0;
+ /* Default value per peer relative preference for a quality: 1.0 */
p->f_rel[i] = 1.0;
}
GNUNET_CONTAINER_DLL_insert (cur->p_head, cur->p_tail, p);
}
+ /* Update preference value according to type */
switch (kind) {
case GNUNET_ATS_PREFERENCE_BANDWIDTH:
case GNUNET_ATS_PREFERENCE_LATENCY:
@@ -1139,7 +1146,8 @@
default:
break;
}
- /* Recalcalculate total preference for kind*/
+
+ /* Recalcalculate total preference for this quality kind over all peers*/
cur->f_total[kind] = 0;
for (p = cur->p_head; NULL != p; p = p->next)
cur->f_total[kind] += p->f[kind];
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r25753 - gnunet/src/ats,
gnunet <=