* Reseed:

- Restore ovh reseeds, thx mathiasdm
  * Tunnels:
    - For expl. tunnels, fall back to high cap sooner
    - Tweak build rejections for class N
This commit is contained in:
zzz
2011-10-07 15:44:06 +00:00
parent c270e147c1
commit 39ba081384
5 changed files with 26 additions and 13 deletions

View File

@ -18,7 +18,7 @@ public class RouterVersion {
/** deprecated */
public final static String ID = "Monotone";
public final static String VERSION = CoreVersion.VERSION;
public final static long BUILD = 28;
public final static long BUILD = 29;
/** for example "-test" */
public final static String EXTRA = "-rc";

View File

@ -60,7 +60,7 @@ public class Reseeder {
"http://reseed.i2p-projekt.de/" + "," +
"http://forum.i2p2.de/netdb/" + "," +
/* "http://www.i2pbote.net/netDb/," + NO DATA */
/* "http://r31453.ovh.net/static_media/files/netDb/," + DOWN */
"http://r31453.ovh.net/static_media/files/netDb/" + "," +
"http://cowpuncher.drollette.com/netdb/" + "," +
"http://75.145.125.59/netDb/";
@ -70,8 +70,8 @@ public class Reseeder {
"https://forum.i2p2.de/netdb/" + "," +
/* "https://www.i2pbote.net/netDb/," + NO DATA */
"https://reseed.i2p-projekt.de/" + "," +
/* "https://r31453.ovh.net/static_media/files/netDb/," + DOWN */
"https://cowpuncher.drollette.com/netdb/" + ";" +
"https://r31453.ovh.net/static_media/files/netDb/" + "," +
"https://cowpuncher.drollette.com/netdb/" + "," +
"https://75.145.125.59/netDb/";
private static final String PROP_INPROGRESS = "net.i2p.router.web.ReseedHandler.reseedInProgress";

View File

@ -492,18 +492,25 @@ class BuildHandler {
* approaching our connection limit (i.e. !haveCapacity()),
* reject this request.
*
* Don't do this for class O, under the assumption that they are already talking
* Don't do this for class N or O, under the assumption that they are already talking
* to most of the routers, so there's no reason to reject. This may drive them
* to their conn. limits, but it's hopefully a temporary solution to the
* tunnel build congestion. As the net grows this will have to be revisited.
*/
RouterInfo ri = _context.router().getRouterInfo();
if (response == 0 &&
(ri == null || ri.getBandwidthTier().charAt(0) != 'O') &&
((isInGW && ! _context.commSystem().haveInboundCapacity(87)) ||
(isOutEnd && ! _context.commSystem().haveOutboundCapacity(87)))) {
_context.throttle().setTunnelStatus(_x("Rejecting tunnels: Connection limit"));
if (response == 0) {
if (ri == null) {
// ?? We should always have a RI
response = TunnelHistory.TUNNEL_REJECT_BANDWIDTH;
} else {
char bw = ri.getBandwidthTier().charAt(0);
if (bw != 'O' && bw != 'N' &&
((isInGW && ! _context.commSystem().haveInboundCapacity(87)) ||
(isOutEnd && ! _context.commSystem().haveOutboundCapacity(87)))) {
_context.throttle().setTunnelStatus(_x("Rejecting tunnels: Connection limit"));
response = TunnelHistory.TUNNEL_REJECT_BANDWIDTH;
}
}
}
// Check participating throttle counters for previous and next hops

View File

@ -67,7 +67,7 @@ class ExploratoryPeerSelector extends TunnelPeerSelector {
return rv;
}
private static final int MIN_NONFAILING_PCT = 25;
private static final int MIN_NONFAILING_PCT = 15;
private static final int MIN_ACTIVE_PEERS_STARTUP = 6;
private static final int MIN_ACTIVE_PEERS = 12;
@ -141,7 +141,8 @@ class ExploratoryPeerSelector extends TunnelPeerSelector {
// l.debug("Client, Expl. Fail pct: " + c + ", " + e);
if (e <= c || e <= 25) // doing very well (unlikely)
return 0;
if (c >= 90) // doing very badly
// Doing very badly? This is important to prevent network congestion collapse
if (c >= 70 || e >= 75)
return 100 - MIN_NONFAILING_PCT;
return (100 * (e-c)) / (100-c);
}