gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r1091 - in GNUnet: . contrib po src/applications/identity s


From: grothoff
Subject: [GNUnet-SVN] r1091 - in GNUnet: . contrib po src/applications/identity src/applications/topology_default src/applications/topology_f2f src/server
Date: Mon, 27 Jun 2005 06:30:51 -0700 (PDT)

Author: grothoff
Date: 2005-06-27 06:30:37 -0700 (Mon, 27 Jun 2005)
New Revision: 1091

Modified:
   GNUnet/contrib/config-daemon.in
   GNUnet/po/GNUnet.pot
   GNUnet/po/de.po
   GNUnet/po/rw.po
   GNUnet/po/vi.po
   GNUnet/src/applications/identity/identity.c
   GNUnet/src/applications/topology_default/topology.c
   GNUnet/src/applications/topology_f2f/topology.c
   GNUnet/src/server/connection.c
   GNUnet/todo
Log:
update

Modified: GNUnet/contrib/config-daemon.in
===================================================================
--- GNUnet/contrib/config-daemon.in     2005-06-27 12:37:04 UTC (rev 1090)
+++ GNUnet/contrib/config-daemon.in     2005-06-27 13:30:37 UTC (rev 1091)
@@ -123,7 +123,7 @@
                information how to join GNUnet that is in no way private to the
                local node.  This directory can be shared between nodes AND 
should
                be put on a public web-server (if possible).  You should find a 
list
-               of known hosts under http://www.ovmj.org/GNUnet/hosts/, you can 
copy
+               of known hosts under http://gnunet.org/hosts/, you can copy
                those files into this directory.
                
                If you specify a HOSTLISTURL, the directory will be 
automatically
@@ -295,6 +295,15 @@
                If you do not know what all this means, try without!
                Default is no IP specified.
   
+  config F2F
+  string "List of friends for friend-to-friend topology"
+  default "$GNUNETD_HOME/friends"
+  depends on Meta::ADVANCED
+  help
+               No help available at this point.
+               NILS: can we only show this item if 
+               the user selected topology = toplogy_f2f?
+
   config HELOEXCHANGE
   bool "Participate in network topology management"
   default y
@@ -794,10 +803,10 @@
                        
                        config REGISTERURL
                        string "Where should we register the testbed service?"
-                       default "http://www.ovmj.org/GNUnet/testbed/";
+                       default "http://gnunet.org/testbed/";
                        help
                                Where should we register the testbed service?
-                               Default is 
"http://www.ovmj.org/GNUnet/testbed/";                                
+                               Default is "http://gnunet.org/testbed/";         
                
                        
                        config ALLOW_MODULE_LOADING
                        bool "Allow to load and unload modules"

Modified: GNUnet/po/GNUnet.pot
===================================================================
--- GNUnet/po/GNUnet.pot        2005-06-27 12:37:04 UTC (rev 1090)
+++ GNUnet/po/GNUnet.pot        2005-06-27 13:30:37 UTC (rev 1091)
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2005-06-26 18:59+0200\n"
+"POT-Creation-Date: 2005-06-26 20:21+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <address@hidden>\n"
 "Language-Team: LANGUAGE <address@hidden>\n"
@@ -2595,14 +2595,14 @@
 "Unindexed ODB block '%s' from offset %llu already missing from datastore.\n"
 msgstr ""
 
-#: src/applications/fs/module/fs.c:998
+#: src/applications/fs/module/fs.c:999
 #, c-format
 msgid ""
 "You must specify a postive number for '%s' in the configuration in section '%"
 "s'.\n"
 msgstr ""
 
-#: src/applications/fs/module/fs.c:1039
+#: src/applications/fs/module/fs.c:1040
 #, c-format
 msgid "'%s' registering client handlers %d %d %d %d %d %d %d %d %d\n"
 msgstr ""

Modified: GNUnet/po/de.po
===================================================================
--- GNUnet/po/de.po     2005-06-27 12:37:04 UTC (rev 1090)
+++ GNUnet/po/de.po     2005-06-27 13:30:37 UTC (rev 1091)
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: GNUnet 0.7.0pre0\n"
 "Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2005-06-26 18:59+0200\n"
+"POT-Creation-Date: 2005-06-26 20:21+0200\n"
 "PO-Revision-Date: 2005-05-11 21:35+0200\n"
 "Last-Translator: Nils Durner <address@hidden>\n"
 "Language-Team: German <address@hidden>\n"
@@ -2864,7 +2864,7 @@
 "Deindizierter ODB Block '%s' vom Offset %llu fehlt bereits im "
 "Datenspeicher.\n"
 
-#: src/applications/fs/module/fs.c:998
+#: src/applications/fs/module/fs.c:999
 #, c-format
 msgid ""
 "You must specify a postive number for '%s' in the configuration in section '%"
@@ -2873,7 +2873,7 @@
 "Sie m�ssen f�r '%s' in der Sektion '%s' der Konfigurationsdatei eine "
 "positive Zahl angeben.\n"
 
-#: src/applications/fs/module/fs.c:1039
+#: src/applications/fs/module/fs.c:1040
 #, fuzzy, c-format
 msgid "'%s' registering client handlers %d %d %d %d %d %d %d %d %d\n"
 msgstr "'%s' registriert Client-Handler %d %d %d %d %d %d %d %d %d %d\n"

Modified: GNUnet/po/rw.po
===================================================================
--- GNUnet/po/rw.po     2005-06-27 12:37:04 UTC (rev 1090)
+++ GNUnet/po/rw.po     2005-06-27 13:30:37 UTC (rev 1091)
@@ -16,7 +16,7 @@
 msgstr ""
 "Project-Id-Version: GNUnet 0.7.0pre0\n"
 "Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2005-06-26 18:59+0200\n"
+"POT-Creation-Date: 2005-06-26 20:21+0200\n"
 "PO-Revision-Date: 2005-04-04 10:55-0700\n"
 "Last-Translator: Steven Michael Murphy <address@hidden>\n"
 "Language-Team: Kinyarwanda <address@hidden>\n"
@@ -2970,14 +2970,14 @@
 "Unindexed ODB block '%s' from offset %llu already missing from datastore.\n"
 msgstr ""
 
-#: src/applications/fs/module/fs.c:998
+#: src/applications/fs/module/fs.c:999
 #, fuzzy, c-format
 msgid ""
 "You must specify a postive number for '%s' in the configuration in section '%"
 "s'.\n"
 msgstr "a Umubare kugirango in i Iboneza in Icyiciro"
 
-#: src/applications/fs/module/fs.c:1039
+#: src/applications/fs/module/fs.c:1040
 #, c-format
 msgid "'%s' registering client handlers %d %d %d %d %d %d %d %d %d\n"
 msgstr ""

Modified: GNUnet/po/vi.po
===================================================================
--- GNUnet/po/vi.po     2005-06-27 12:37:04 UTC (rev 1090)
+++ GNUnet/po/vi.po     2005-06-27 13:30:37 UTC (rev 1091)
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: GNUnet 0.7.0pre0\n"
 "Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2005-06-26 18:59+0200\n"
+"POT-Creation-Date: 2005-06-26 20:21+0200\n"
 "PO-Revision-Date: 2005-06-12 15:17+0400\n"
 "Last-Translator: Phan Vinh Thinh <address@hidden>\n"
 "Language-Team: Vietnamese <address@hidden>\n"
@@ -2717,7 +2717,7 @@
 "Unindexed ODB block '%s' from offset %llu already missing from datastore.\n"
 msgstr ""
 
-#: src/applications/fs/module/fs.c:998
+#: src/applications/fs/module/fs.c:999
 #, c-format
 msgid ""
 "You must specify a postive number for '%s' in the configuration in section '%"
@@ -2725,7 +2725,7 @@
 msgstr ""
 "Người dùng phải chỉ ra một số dương cho '%s' trong phần '%s' của cấu hình.\n"
 
-#: src/applications/fs/module/fs.c:1039
+#: src/applications/fs/module/fs.c:1040
 #, c-format
 msgid "'%s' registering client handlers %d %d %d %d %d %d %d %d %d\n"
 msgstr ""

Modified: GNUnet/src/applications/identity/identity.c
===================================================================
--- GNUnet/src/applications/identity/identity.c 2005-06-27 12:37:04 UTC (rev 
1090)
+++ GNUnet/src/applications/identity/identity.c 2005-06-27 13:30:37 UTC (rev 
1091)
@@ -632,14 +632,15 @@
        hosts_[i].delta
          = hosts_[i].delta * 2 + randomi((desperation+1)*cronSECONDS);
        if (hosts_[i].delta > 4 * cronHOURS)
-         hosts_[i].delta = 4 *  cronHOURS+randomi(desperation+1);
+         hosts_[i].delta = 4 *  randomi(cronHOURS * 
+                                        randomi(desperation+1));
       }
       cronTime(&hosts_[i].until);
       hosts_[i].until += hosts_[i].delta;
       hosts_[i].strict = strict;
       hash2enc(&identity->hashPubKey,
               &hn);
-#if DEBUG_IDENTITY
+#if DEBUG_IDENTITY || 1
       LOG(LOG_INFO,
          "Blacklisting host '%s' (%d) for %llu seconds until %llu 
(strict=%d).\n",
          &hn,

Modified: GNUnet/src/applications/topology_default/topology.c
===================================================================
--- GNUnet/src/applications/topology_default/topology.c 2005-06-27 12:37:04 UTC 
(rev 1090)
+++ GNUnet/src/applications/topology_default/topology.c 2005-06-27 13:30:37 UTC 
(rev 1091)
@@ -28,10 +28,6 @@
  * application to allow users to force loading it
  * (which is probably a very good idea -- otherwise
  * the peer will end up rather disconnected :-)
- *
- * Todo:
- * - spread out the current 'every-5-second' bulk cron job
- *   over a more continuous interval (as it was in 0.6.5)
  */
 
 #include "platform.h"
@@ -49,6 +45,18 @@
  */
 #define SECONDS_PINGATTEMPT 120
 
+/**
+ * How often should the cron-job scan for free slots (to establish
+ * new connections)?
+ */
+#define LIVE_SCAN_FREQUENCY 500 * cronMILLIS
+
+/**
+ * Value > 1 that determines the chance (1:LSE) that the cron job
+ * actually tries to do something for a given slot.
+ */
+#define LIVE_SCAN_EFFECTIVENESS 10
+
 static CoreAPIForApplication * coreAPI;
 
 static Identity_ServiceAPI * identity;
@@ -188,15 +196,10 @@
  * Check the liveness of the ping and possibly ping it.
  */
 static void checkNeedForPing(const PeerIdentity * peer,
-                            int * lastSlot) {
+                            void * unused) {
   cron_t now;
   cron_t act;
-  int slot;
 
-  slot = coreAPI->computeIndex(peer);
-  if (slot == *lastSlot)
-    return; /* slot already in use twice! */
-  *lastSlot = slot;
   cronTime(&now);
   if (SYSERR == coreAPI->getLastActivityOf(peer, &act)) {
     BREAK();
@@ -226,19 +229,28 @@
   int i;
   int slotCount;
   int active;
+  unsigned int minint;
 
   slotCount = coreAPI->getSlotCount();
+  if (saturation > 0.001)
+    minint = (int) 1 / saturation;
+  else
+    minint = 10;
+  if (minint == 0)
+    minint = 1;
   for (i=slotCount-1;i>=0;i--) {
-    if ( (0 == coreAPI->isSlotUsed(i)) &&
+    if (randomi(LIVE_SCAN_EFFECTIVENESS) != 0)
+      continue;
+    if ( (minint > coreAPI->isSlotUsed(i)) &&
         (! testConfigurationString("GNUNETD",
                                    "DISABLE-AUTOCONNECT",
                                    "YES")) )
       scanForHosts(i);
   }
   if (saturation >= 0.75) {
-    i = -1;
-    active = coreAPI->forAllConnectedNodes((PerNodeCallback)&checkNeedForPing,
-                                          &i);
+    active = coreAPI->forAllConnectedNodes
+      (&checkNeedForPing,
+       NULL);
   } else {
     active = coreAPI->forAllConnectedNodes(NULL,
                                           NULL);
@@ -290,8 +302,8 @@
   }
 
   addCronJob(&cronCheckLiveness,
-            5 * cronSECONDS,
-            5 * cronSECONDS,
+            LIVE_SCAN_FREQUENCY,
+            LIVE_SCAN_FREQUENCY,
             NULL);
 
   if (-1 == (len = stateReadContent(TOPOLOGY_TAG_FILE,
@@ -310,7 +322,7 @@
          data);
       FREE(data);
       delCronJob(&cronCheckLiveness,
-                5 * cronSECONDS,
+                LIVE_SCAN_FREQUENCY,
                 NULL);
       capi->releaseService(identity);
       identity = NULL;
@@ -331,7 +343,7 @@
 
 int release_module_topology_default() {
   delCronJob(&cronCheckLiveness,
-            5 * cronSECONDS,
+            LIVE_SCAN_FREQUENCY,
             NULL);
   coreAPI->releaseService(identity);
   identity = NULL;

Modified: GNUnet/src/applications/topology_f2f/topology.c
===================================================================
--- GNUnet/src/applications/topology_f2f/topology.c     2005-06-27 12:37:04 UTC 
(rev 1090)
+++ GNUnet/src/applications/topology_f2f/topology.c     2005-06-27 13:30:37 UTC 
(rev 1091)
@@ -28,10 +28,6 @@
  * application to allow users to force loading it
  * (which is probably a very good idea -- otherwise
  * the peer will end up rather disconnected :-)
- *
- * Todo:
- * - spread out the current 'every-5-second' bulk cron job
- *   over a more continuous interval (as it was in 0.6.5)
  */
 
 #include "platform.h"
@@ -50,6 +46,20 @@
  */
 #define SECONDS_PINGATTEMPT 120
 
+
+/**
+ * How often should the cron-job scan for free slots (to establish
+ * new connections)?
+ */
+#define LIVE_SCAN_FREQUENCY 500 * cronMILLIS
+
+/**
+ * Value > 1 that determines the chance (1:LSE) that the cron job
+ * actually tries to do something for a given slot.
+ */
+#define LIVE_SCAN_EFFECTIVENESS 10
+
+
 static CoreAPIForApplication * coreAPI;
 
 static Identity_ServiceAPI * identity;
@@ -241,11 +251,23 @@
   int i;
   int slotCount;
   int active;
+  unsigned int minint;
 
   slotCount = coreAPI->getSlotCount();
-  for (i=slotCount-1;i>=0;i--)
-    if (0 == coreAPI->isSlotUsed(i))
+  if (saturation > 0.001)
+    minint = (int) 1 / saturation;
+  else 
+    minint = 10;
+  if (minint == 0)
+    minint = 1;
+  for (i=slotCount-1;i>=0;i--) {
+    if (randomi(LIVE_SCAN_EFFECTIVENESS) != 0)
+      continue;
+
+    if ( (minint > coreAPI->isSlotUsed(i)) &&
+        (0 == coreAPI->isSlotUsed(i)) )
       scanForHosts(i);
+  }
   if (saturation >= 0.75) {
     i = -1;
     active = coreAPI->forAllConnectedNodes((PerNodeCallback)&checkNeedForPing,
@@ -387,8 +409,8 @@
   registerConfigurationUpdateCallback
     ((NotifyConfigurationUpdateCallback)&rereadConfiguration);
   addCronJob(&cronCheckLiveness,
-            5 * cronSECONDS,
-            5 * cronSECONDS,
+            LIVE_SCAN_FREQUENCY,
+            LIVE_SCAN_FREQUENCY,
             NULL);
   api.estimateNetworkSize = &estimateNetworkSize;
   api.getSaturation = &estimateSaturation;
@@ -398,7 +420,7 @@
 
 int release_module_topology_f2f() {
   delCronJob(&cronCheckLiveness,
-            5 * cronSECONDS,
+            LIVE_SCAN_FREQUENCY,
             NULL);
   unregisterConfigurationUpdateCallback
     ((NotifyConfigurationUpdateCallback)&rereadConfiguration);

Modified: GNUnet/src/server/connection.c
===================================================================
--- GNUnet/src/server/connection.c      2005-06-27 12:37:04 UTC (rev 1090)
+++ GNUnet/src/server/connection.c      2005-06-27 13:30:37 UTC (rev 1091)
@@ -1650,7 +1650,7 @@
   for (u=0;u<activePeerCount;u++) {
     adjustedRR[u] = entries[u]->recently_received * cronMINUTES / 
timeDifference / 2;
 
-#if DEBUG_CONNECTION
+#if DEBUG_CONNECTION || 1
     if (adjustedRR[u] > entries[u]->idealized_limit) {
       EncName enc;
       IFLOG(LOG_INFO,
@@ -1669,7 +1669,7 @@
      */
     if (adjustedRR[u] > 2 * MAX_BUF_FACT *
        entries[u]->max_transmitted_limit) {
-#if DEBUG_CONNECTION
+#if DEBUG_CONNECTION || 1
       EncName enc;
       IFLOG(LOG_INFO,
            hash2enc(&entries[u]->session.sender.hashPubKey,
@@ -2158,7 +2158,8 @@
   if ( (slot >= 0) && (slot < CONNECTION_MAX_HOSTS_) ) {
     be = CONNECTION_buffer_[slot];
     while (be != NULL) {
-      ret++;
+      if (be->status == STAT_UP)
+       ret++;
       be = be->overflowChain;
     }
   }

Modified: GNUnet/todo
===================================================================
--- GNUnet/todo 2005-06-27 12:37:04 UTC (rev 1090)
+++ GNUnet/todo 2005-06-27 13:30:37 UTC (rev 1091)
@@ -10,6 +10,11 @@
       * Ask to remove lib/
 - gnunet-setup: [Nils]
   * gconfig: fix focus changes
+- Investigate:
+  * why do we not connect to more peers?
+    (pre3 has been observed to connect to just 1 peer,
+     whilst gnunet-transport-check -p was able to
+     connect to 4-6 peers at the same time!)
 - Additional (automated, make check-style) testing:
   * gnunet-tracekit
   * gap and economy
@@ -26,7 +31,6 @@
 
 0.7.1 (aka "stabilization"):
 - Optimizations:
-  * spread out scanning done in topology_*.c?
   * directories can be compacted -- add heuristic to determine
     if we should NOT padd with zeros (if we would waste too
     much space).  Needs some lookahead for size of remaining





reply via email to

[Prev in Thread] Current Thread [Next in Thread]