forked from I2P_Developers/i2p.i2p
* 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:
@ -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";
|
||||
|
@ -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";
|
||||
|
@ -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
|
||||
|
@ -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);
|
||||
}
|
||||
|
Reference in New Issue
Block a user