||Blocking thread that is given peers by the inboundFragment pool, sending out
any outstanding ACKs.
||Since the TimedWeightedPriorityMessageQueue.add()
was disabled by jrandom in UDPTransport.java
on 2006-02-19, and the choke/unchoke was disabled at the same time,
all of TWPMQ is pointless, so just do this for now.
||Coordinate the establishment of new sessions - both inbound and outbound.
||Data for a new connection being established, where the remote peer has
initiated the connection with us.
||Organize the received data message fragments, feeding completed messages
MessageReceiver and telling the
ACKSender of new
peers to ACK.
||Hold the raw data fragments of an inbound message
||Pull fully completed fragments off the
parse 'em into I2NPMessages, and stick them on the
InNetMessagePool by way of the
||Data for a new connection being established, where we initiated the
connection with a remote peer.
||Coordinate the outbound fragments and select the next one to be built.
||Maintain the outbound fragmentation for resending
||Blocking thread to grab new messages off the outbound queue and
plopping them into our active pool.
||Big ol' class to do all our packet formatting.
||Pull inbound packets from the inbound receiver's queue, figure out what
peer session they belong to (if any), authenticate and decrypt them
with the appropriate keys, and push them to the appropriate handler.
||Blocking thread to grab new packets off the outbound fragment
pool and toss 'em onto the outbound packet queue
||Contain all of the state about a UDP connection to a peer.
||From udp.html on the website:
The automation of collaborative reachability testing for peers is
enabled by a sequence of PeerTest messages.
||Unique ID for a peer - its IP + port, all bundled into a tidy obj.
||Weighted priority queue implementation for the outbound messages, coupled
with code to fail messages that expire.
||basic helper to parse out peer info from a udp address
||Coordinate the low level datagram socket, managing the UDPSender and
||This sends random data to all UDP peers at a specified rate.
||Basic delivery unit containing the datagram.
||To read a packet, initialize this reader with the data and fetch out
the appropriate fields.
||Lowest level component to pull raw UDP datagrams off the wire as fast
as possible, controlled by both the bandwidth limiter and the router's
||Lowest level packet sender, pushes anything on its queue ASAP.