Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ConnExpirationPolicy ¶
type ConnExpirationPolicy interface { IsExpired(now, lastUsed time.Time) bool PollFrequency() time.Duration }
func NewDefaultExpirationPolicy ¶
func NewDefaultExpirationPolicy() ConnExpirationPolicy
func NewTimeoutExpirationPolicy ¶
func NewTimeoutExpirationPolicy(timeout time.Duration, checkInterval time.Duration) ConnExpirationPolicy
type Manager ¶
type Manager interface { GetWriteQueue(clientAddr net.Addr) WriteQueue CreateWriteQueue(targetAddr *net.UDPAddr, clientAddr net.Addr, service *entities.Service, conn UDPWriterTo) (WriteQueue, error) QueueEvent(Event) QueueError(error) }
func NewManager ¶
func NewManager(provider tunnel.FabricProvider, newConnPolicy NewConnPolicy, expirationPolicy ConnExpirationPolicy) Manager
type NewConnAcceptResult ¶
type NewConnAcceptResult int
const ( Allow NewConnAcceptResult = iota Deny AllowDropLRU )
type NewConnPolicy ¶
type NewConnPolicy interface {
NewConnection(currentCount uint32) NewConnAcceptResult
}
func NewLimitedConnectionPolicyDropLRU ¶
func NewLimitedConnectionPolicyDropLRU(limit uint32) NewConnPolicy
func NewLimitedConnectionPolicyDropNew ¶
func NewLimitedConnectionPolicyDropNew(limit uint32) NewConnPolicy
func NewUnlimitedConnectionPolicy ¶
func NewUnlimitedConnectionPolicy() NewConnPolicy
type UDPWriterTo ¶
type UnpooledBuffer ¶
type UnpooledBuffer []byte
func (UnpooledBuffer) GetPayload ¶
func (u UnpooledBuffer) GetPayload() []byte
func (UnpooledBuffer) Release ¶
func (u UnpooledBuffer) Release()
type WriteQueue ¶
type WriteQueue interface { Accept(mempool.PooledBuffer) LocalAddr() net.Addr Service() string }
Click to show internal directories.
Click to hide internal directories.