Package net.i2p.router
Class RouterThrottleImpl
java.lang.Object
net.i2p.router.RouterThrottleImpl
- All Implemented Interfaces:
RouterThrottle
- Direct Known Subclasses:
RouterDoSThrottle
public class RouterThrottleImpl extends Object implements RouterThrottle
Simple throttle that basically stops accepting messages or nontrivial
requests if the jobQueue lag is too large.
-
Field Summary
Fields Modifier and Type Field Description protected RouterContext_contextstatic intDEFAULT_MAX_TUNNELSstatic StringPROP_MAX_TUNNELSstatic intTUNNEL_ACCEPTtunnel acceptance -
Constructor Summary
Constructors Constructor Description RouterThrottleImpl(RouterContext context) -
Method Summary
Modifier and Type Method Description booleanacceptNetDbLookupRequest(Hash key)Deprecated.unused, function moved to netdbbooleanacceptNetworkMessage()Should we accept any more data from the network for any sort of message, taking into account our current load, or should we simply slow down? FIXME only called by SSU Receiver, not NTCP! FIXME should put warning on the console FIXME or should we do this at all? We have Codel queues all over now...intacceptTunnelRequest()If we should send a reject, return a nonzero reject code.voidcancelShutdownStatus()doublegetInboundRateDelta()How much faster (or if negative, slower) we are receiving data as opposed to our longer term averages?StringgetLocalizedTunnelStatus()getTunnelStatus(), translated if available.longgetMessageDelay()How backed up we are at the moment processing messages (in milliseconds)longgetTunnelLag()How backed up our tunnels are at the moment (in milliseconds)StringgetTunnelStatus()Message on the state of participating tunnel acceptancevoidsetShutdownStatus()voidsetTunnelStatus(String msg)
-
Field Details
-
_context
-
PROP_MAX_TUNNELS
- See Also:
- Constant Field Values
-
DEFAULT_MAX_TUNNELS
public static final int DEFAULT_MAX_TUNNELS -
TUNNEL_ACCEPT
public static final int TUNNEL_ACCEPTtunnel acceptance- See Also:
- Constant Field Values
-
-
Constructor Details
-
Method Details
-
acceptNetworkMessage
public boolean acceptNetworkMessage()Should we accept any more data from the network for any sort of message, taking into account our current load, or should we simply slow down? FIXME only called by SSU Receiver, not NTCP! FIXME should put warning on the console FIXME or should we do this at all? We have Codel queues all over now...- Specified by:
acceptNetworkMessagein interfaceRouterThrottle
-
acceptNetDbLookupRequest
Deprecated.unused, function moved to netdbDescription copied from interface:RouterThrottleShould we accept the netDb lookup message, replying either with the value or some closer peers, or should we simply drop it due to overload?- Specified by:
acceptNetDbLookupRequestin interfaceRouterThrottle
-
acceptTunnelRequest
public int acceptTunnelRequest()If we should send a reject, return a nonzero reject code. Anything that causes us to drop a request instead of rejecting it must go in BuildHandler.handleInboundRequest(), not here.- Specified by:
acceptTunnelRequestin interfaceRouterThrottle- Returns:
- 0 for accept or nonzero reject code
-
getMessageDelay
public long getMessageDelay()Description copied from interface:RouterThrottleHow backed up we are at the moment processing messages (in milliseconds)- Specified by:
getMessageDelayin interfaceRouterThrottle
-
getTunnelLag
public long getTunnelLag()Description copied from interface:RouterThrottleHow backed up our tunnels are at the moment (in milliseconds)- Specified by:
getTunnelLagin interfaceRouterThrottle
-
getInboundRateDelta
public double getInboundRateDelta()Description copied from interface:RouterThrottleHow much faster (or if negative, slower) we are receiving data as opposed to our longer term averages?- Specified by:
getInboundRateDeltain interfaceRouterThrottle
-
getTunnelStatus
Description copied from interface:RouterThrottleMessage on the state of participating tunnel acceptance- Specified by:
getTunnelStatusin interfaceRouterThrottle
-
getLocalizedTunnelStatus
getTunnelStatus(), translated if available.- Specified by:
getLocalizedTunnelStatusin interfaceRouterThrottle- Since:
- 0.9.45
-
setShutdownStatus
public void setShutdownStatus()- Specified by:
setShutdownStatusin interfaceRouterThrottle- Since:
- 0.8.12
-
cancelShutdownStatus
public void cancelShutdownStatus()- Specified by:
cancelShutdownStatusin interfaceRouterThrottle- Since:
- 0.8.12
-
setTunnelStatus
- Specified by:
setTunnelStatusin interfaceRouterThrottle
-