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 configFields 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
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 Details
-
_hopConfig
-
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
This goes in router advanced config- See Also:
- Constant Field Values
-
OB_CLIENT_BATCH_FREQ
public static final int OB_CLIENT_BATCH_FREQfor client OBGWs only (our data)- See Also:
- Constant Field Values
-
OB_EXPL_BATCH_FREQ
public static final int OB_EXPL_BATCH_FREQfor exploratory OBGWs only (our tunnel tests and build messages)- See Also:
- Constant Field Values
-
DEFAULT_BATCH_FREQUENCY
public static final int DEFAULT_BATCH_FREQUENCYfor IBGWs for efficiency (not our data)- See Also:
- Constant Field Values
-
-
Constructor Details
-
BatchedRouterPreprocessor
for OBGWs -
BatchedRouterPreprocessor
for IBGWs
-
-
Method Details
-
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
-