Package | Description |
---|---|
net.i2p.router.transport.udp |
The UDP transport (also known as 'SSU transport') allows passing I2P messages on top of UDP.
|
Modifier and Type | Method and Description |
---|---|
PeerState |
OutboundMessageState.getPeer() |
(package private) PeerState |
UDPTransport.getPeerState(Hash remotePeer)
get the state for the peer with the given ident, or null
if no state exists
|
(package private) PeerState |
UDPTransport.getPeerState(RemoteHostId hostInfo)
get the state for the peer at the given remote host/port, or null
if no state exists
|
(package private) PeerState |
UDPTransport.pickTestPeer(PeerTestState.Role peerRole,
boolean isIPv6,
RemoteHostId dontInclude)
Pick a Bob (if we are Alice) or a Charlie (if we are Bob).
|
(package private) PeerState |
EstablishmentManager.receiveData(OutboundEstablishState state)
A data packet arrived on an outbound connection being established, which
means its complete (yay!).
|
Modifier and Type | Method and Description |
---|---|
(package private) static Comparator<PeerState> |
Sorters.getComparator(int sortFlags) |
(package private) List<PeerState> |
UDPTransport.getPeerStatesByIP(RemoteHostId hostInfo)
Get the states for all peers at the given remote host, ignoring port.
|
Modifier and Type | Method and Description |
---|---|
void |
ACKSender.ackPeer(PeerState peer)
Add to the queue.
|
void |
OutboundMessageFragments.add(List<OutboundMessageState> states,
PeerState peer)
Short circuit the OutNetMessage, letting us send multiple messages
reliably and efficiently.
|
void |
OutboundMessageFragments.add(OutboundMessageState state,
PeerState peer)
Short circuit the OutNetMessage, letting us send the establish
complete message reliably.
|
void |
OutboundMessageFragments.add(PeerState peer)
Add the peer to the list of peers wanting to transmit something.
|
void |
IntroductionManager.add(PeerState peer) |
(package private) boolean |
UDPTransport.addRemotePeerState(PeerState peer)
add the peer info, returning true if it went in properly, false if
it was rejected (causes include peer ident already connected, or no
remote host info known
|
UDPPacket |
PacketBuilder.buildACK(PeerState peer,
List<ACKBitfield> ackBitfields)
Build the ack packet.
|
UDPPacket |
PacketBuilder.buildPacket(List<PacketBuilder.Fragment> fragments,
PeerState peer,
List<Long> ackIdsRemaining,
int newAckCount,
List<ACKBitfield> partialACKsRemaining) |
UDPPacket |
PacketBuilder.buildPacket(OutboundMessageState state,
int fragment,
PeerState peer,
List<Long> ackIdsRemaining,
int newAckCount,
List<ACKBitfield> partialACKsRemaining)
This builds a data packet (PAYLOAD_TYPE_DATA).
|
UDPPacket |
PacketBuilder.buildPing(PeerState peer)
An ACK packet with no acks.
|
(package private) UDPPacket |
PacketBuilder.buildRelayIntro(RemoteHostId alice,
PeerState charlie,
UDPPacketReader.RelayRequestReader request) |
(package private) UDPPacket |
PacketBuilder.buildRelayResponse(RemoteHostId alice,
PeerState charlie,
long nonce,
SessionKey cipherKey,
SessionKey macKey) |
UDPPacket |
PacketBuilder.buildSessionDestroyPacket(PeerState peer)
Build a destroy packet, which contains a header but no body.
|
(package private) void |
UDPTransport.changePeerPort(PeerState peer,
int newPort)
Remove and add to peersByRemoteHost map
|
int |
Sorters.IdleInComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.IdleOutComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.RateInComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.RateOutComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.UptimeComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.SkewComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.CwndComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.SsthreshComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.RTTComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.RTOComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.MTUComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.SendCountComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.RecvCountComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.ResendComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.DupComparator.compare(PeerState l,
PeerState r) |
int |
Sorters.PeerComparator.compare(PeerState l,
PeerState r) |
(package private) void |
OutboundMessageFragments.dropPeer(PeerState peer) |
(package private) void |
UDPTransport.dropPeer(PeerState peer,
boolean shouldBanlist,
String why)
This does not send a session destroy, caller must do that if desired.
|
static int |
PacketBuilder.getMaxAdditionalFragmentSize(PeerState peer,
int numFragments,
int curDataSize)
Will a packet to 'peer' that already has 'numFragments' fragments
totalling 'curDataSize' bytes fit another fragment of size 'newFragSize' ??
This doesn't leave anything for acks.
|
void |
PeerState.loadFrom(PeerState oldPeer)
Transfer the basic activity/state from the old peer to the current peer
|
void |
InboundMessageFragments.receiveData(PeerState from,
UDPPacketReader.DataReader data)
Pull the fragments and ACKs out of the authenticated data packet
|
(package private) void |
EstablishmentManager.receiveSessionDestroy(RemoteHostId from,
PeerState state)
Got a SessionDestroy on an established conn
|
void |
IntroductionManager.remove(PeerState peer) |
(package private) void |
UDPTransport.send(I2NPMessage msg,
List<OutNetMessage> msgs,
PeerState peer)
"injected" message from the EstablishmentManager,
plus pending messages to send,
so the messages may be bundled efficiently.
|
(package private) void |
UDPTransport.send(I2NPMessage msg,
PeerState peer)
"injected" message from the EstablishmentManager.
|
(package private) void |
UDPTransport.send(List<I2NPMessage> msgs,
PeerState peer)
"injected" messages from the EstablishmentManager.
|
(package private) void |
UDPTransport.sendDestroy(PeerState peer)
Send a session destroy message, bypassing OMF and PacketPusher.
|
Constructor and Description |
---|
OutboundMessageState(I2PAppContext context,
I2NPMessage msg,
PeerState peer)
"injected" message from the establisher.
|
OutboundMessageState(I2PAppContext context,
OutNetMessage m,
PeerState peer)
Normal constructor.
|