# Package net.i2p.router.transport

The transport system allows the usage of communication layers that are below I2P in the stack, on which I2P messages are sent.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  FIFOBandwidthLimiter.CompleteListener |
  FIFOBandwidthLimiter.Request | This is somewhat complicated by having both inbound and outbound in a single request.
  Transport | Defines a way to send a message to another peer and start listening for messages
  TransportEventListener |

- Class Summary
  Class | Description
  --- | ---
  CommSystemFacadeImpl |
  FIFOBandwidthLimiter | Concurrent plan: It's difficult to get rid of the locks on _pendingInboundRequests since locked_satisyInboundAvailable() leaves Requests on the head of the queue.
  FIFOBandwidthRefiller |
  GeoIP | Manage geoip lookup in a file with the Tor geoip format.
  GetBidsJob | Retrieve a set of bids for a particular outbound message, and if any are found that meet the message's requirements, register the message as in process and pass it on to the transport for processing
  OutboundMessageRegistry |
  TransportBid | Provide a bid for how much it would "cost" to transfer a message of a particular peer
  TransportImpl | Defines a way to send a message to another peer and start listening for messages
  TransportManager |
  UPnP | This (and all in org/freenet, org/cybergarage, org/xmlpull) grabbed from freenet SVN, mid-February 2009 by zzz.
  UPnPManager | Bridge from the I2P RouterAddress data structure to the freenet data structures
  VMCommSystem | Hacked up in-VM comm system for talking between contexts.

## Package net.i2p.router.transport Description

The transport system allows the usage of communication layers that are below I2P in the stack, on which I2P messages are sent.