java.lang.Object
net.i2p.router.tunnel.OutboundTunnelEndpoint

class OutboundTunnelEndpointextends Object
We are the end of an outbound tunnel that we did not create. Gather fragments and honor the instructions as received.
  • Field Details

    • _context

      private final RouterContext _context
      The router context.
    • _log

      private final Log _log
      Logger for the outbound tunnel endpoint.
    • _config

      private final HopConfig _config
      The hop configuration of our tunnel.
    • _processor

      private final HopProcessor _processor
      Processes the messages for the previous hop.
    • _handler

      private final FragmentHandler _handler
      Reassembles the fragmented lease sets.
    • _outDistributor

      private final OutboundMessageDistributor _outDistributor
      Distributes the messages we relay onward.
    • _partBWE

      private final SyntheticREDQueue _partBWE
      Queue estimating the outbound share used while relaying.
    • _lsdsm

      private int _lsdsm
      Lease set store messages relayed.
    • _ridsm

      private int _ridsm
      Router info store messages relayed.
    • _i2npmsg

      private int _i2npmsg
      Other messages relayed.
    • _totalmsg

      private int _totalmsg
      Total messages relayed.
  • Constructor Details

    • OutboundTunnelEndpoint

      public OutboundTunnelEndpoint(RouterContext ctx, HopConfig config, HopProcessor processor)
      Binds the context, config, and processor, sizing the RED queue to the allocated bandwidth.
      Parameters:
      ctx - the router context
      config - the hop configuration, whose allocated bandwidth sizes the RED queue and may be raised to the per-tunnel maximum when it is still at its estimate
      processor - the inbound hop processor, used to decrypt each message before handling
  • Method Details

    • dispatch

      public void dispatch(TunnelDataMessage msg, Hash recvFrom)
      Decrypt and honor the instructions of an incoming tunnel data message.
      Parameters:
      msg - the tunnel data message, already registered with the message registry
      recvFrom - the hash to blame for a decryption failure, the previous hop
    • toString

      public String toString()
      Tunnel summary for log messages.
      Overrides:
      toString in class Object