mirror of
https://github.com/slackhq/nebula.git
synced 2026-05-16 12:57:38 +02:00
PMTUD exploration, start small then grow
This commit is contained in:
@@ -15,4 +15,13 @@ type Device interface {
|
||||
RoutesFor(netip.Addr) routing.Gateways
|
||||
SupportsMultiqueue() bool
|
||||
NewMultiQueueReader() (io.ReadWriteCloser, error)
|
||||
// SupportsPerPeerMTU reports whether SetPeerMTU is implemented for real on
|
||||
// this platform. PMTUD requires this; the manager will refuse to enable when
|
||||
// false even if the operator set tun.max_mtu, because a discovered MTU we
|
||||
// can't actually install does the operator no good.
|
||||
SupportsPerPeerMTU() bool
|
||||
// SetPeerMTU installs a per-peer MTU on the routing table so the kernel will
|
||||
// surface PTB / EMSGSIZE for inside packets to that peer that would exceed mtu.
|
||||
// Pass mtu=0 to remove the override and let the device default apply.
|
||||
SetPeerMTU(addr netip.Addr, mtu int) error
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user