Namespace VpnHood.Net.PacketTransports
Classes
- FairPacketQueue
Provides a send queue split into 64 lanes by a hash of a packet's ports, so a flow that floods fills mostly its own lane and the packets of other flows need not wait behind its backlog.
- PacketTransport
Provides a packet transport that queues sent packets and hands them to the derived class in batches, up to the queue's capacity at a time, on a sending loop of its own.
- PacketTransportBase
Provides the send queue, the sending loop, the packet ownership rules and the counters every packet transport shares; a derived class sends the packets and raises the ones it receives.
- PacketTransportOptions
Provides the settings of a packet transport's send queue.
- PacketTransportStat
Provides the counters of a packet transport, which the transport writes.
- PassthroughPacketTransport
Provides a packet transport with no queue: each packet is handed on at once, on the sender's thread, through SendPacket(IpPacket).
- ReadOnlyPacketTransportStat
Provides a read-only view of a transport's counters, which shows their current values.
- SinglePacketTransport
Provides a packet transport that queues sent packets and hands them to the derived class one at a time, through SendPacketAsync(IpPacket), on a sending loop of its own.
Interfaces
- IPacketTransport
Represents a two-way channel of IP packets: packets sent to it are queued and sent on, and packets it receives are raised through PacketReceived.