Package net.i2p.router.tunnel
Class BatchedRouterPreprocessor
- java.lang.Object
-
- net.i2p.router.tunnel.TrivialPreprocessor
-
- net.i2p.router.tunnel.BatchedPreprocessor
-
- net.i2p.router.tunnel.BatchedRouterPreprocessor
-
- All Implemented Interfaces:
TunnelGateway.QueuePreprocessor
class BatchedRouterPreprocessor extends BatchedPreprocessor
Honor the 'batchFrequency' tunnel pool setting or the 'router.batchFrequency' router config setting, and track fragmentation.
-
-
Field Summary
Fields Modifier and Type Field Description protected HopConfig
_hopConfig
static int
DEFAULT_BATCH_FREQUENCY
for IBGWs for efficiency (not our data)static int
OB_CLIENT_BATCH_FREQ
for client OBGWs only (our data)static int
OB_EXPL_BATCH_FREQ
for exploratory OBGWs only (our tunnel tests and build messages)static String
PROP_BATCH_FREQUENCY
How frequently should we flush non-full messages, in milliseconds This goes in I2CP custom options for the pool.static String
PROP_ROUTER_BATCH_FREQUENCY
This goes in router advanced config-
Fields inherited from class net.i2p.router.tunnel.BatchedPreprocessor
DEFAULT_DELAY
-
Fields inherited from class net.i2p.router.tunnel.TrivialPreprocessor
_context, _dataCache, _log, IV_SIZE, PREPROCESSED_SIZE
-
-
Constructor Summary
Constructors Constructor Description BatchedRouterPreprocessor(RouterContext ctx, HopConfig cfg)
for IBGWsBatchedRouterPreprocessor(RouterContext ctx, TunnelCreatorConfig cfg)
for OBGWs
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected long
getSendDelay()
how long should we wait before flushingprotected void
notePreprocessing(long messageId, int numFragments, int totalLength, List<Long> messageIds, String msg)
-
Methods inherited from class net.i2p.router.tunnel.BatchedPreprocessor
getDelayAmount, preprocessQueue, send
-
Methods inherited from class net.i2p.router.tunnel.TrivialPreprocessor
getInstructionAugmentationSize, getInstructionsSize, preprocess, writeFirstFragment, writeSubsequentFragment
-
-
-
-
Field Detail
-
_hopConfig
protected final HopConfig _hopConfig
-
PROP_BATCH_FREQUENCY
public static final String PROP_BATCH_FREQUENCY
How frequently should we flush non-full messages, in milliseconds This goes in I2CP custom options for the pool. Only applies to OBGWs.- See Also:
- Constant Field Values
-
PROP_ROUTER_BATCH_FREQUENCY
public static final String PROP_ROUTER_BATCH_FREQUENCY
This goes in router advanced config- See Also:
- Constant Field Values
-
OB_CLIENT_BATCH_FREQ
public static final int OB_CLIENT_BATCH_FREQ
for client OBGWs only (our data)- See Also:
- Constant Field Values
-
OB_EXPL_BATCH_FREQ
public static final int OB_EXPL_BATCH_FREQ
for exploratory OBGWs only (our tunnel tests and build messages)- See Also:
- Constant Field Values
-
DEFAULT_BATCH_FREQUENCY
public static final int DEFAULT_BATCH_FREQUENCY
for IBGWs for efficiency (not our data)- See Also:
- Constant Field Values
-
-
Constructor Detail
-
BatchedRouterPreprocessor
public BatchedRouterPreprocessor(RouterContext ctx, TunnelCreatorConfig cfg)
for OBGWs
-
BatchedRouterPreprocessor
public BatchedRouterPreprocessor(RouterContext ctx, HopConfig cfg)
for IBGWs
-
-
Method Detail
-
getSendDelay
protected long getSendDelay()
how long should we wait before flushing- Overrides:
getSendDelay
in classBatchedPreprocessor
-
notePreprocessing
protected void notePreprocessing(long messageId, int numFragments, int totalLength, List<Long> messageIds, String msg)
- Overrides:
notePreprocessing
in classTrivialPreprocessor
-
-