# Functions
DefaultNDPConfigurations returns an NDPConfigurations populated with default values.
New allocates a new networking stack with only the requested networking and transport protocols configured with default options.
NewICMPRateLimiter returns a global rate limiter for controlling the rate at which ICMP messages are generated by the stack.
# Constants
CanBePrimaryEndpoint indicates the endpoint can be used as a primary endpoint for new connections with no local address.
The following are the supported link endpoint capabilities.
The following are the supported link endpoint capabilities.
The following are the supported link endpoint capabilities.
The following are the supported link endpoint capabilities.
The following are the supported link endpoint capabilities.
CapabilityRXChecksumOffload indicates that the link endpoint supports checksum verification on received packets and that it's safe for the stack to skip checksum verification.
The following are the supported link endpoint capabilities.
CapabilityTXChecksumOffload indicates that the link endpoint supports checksum computation for outgoing packets and the stack can skip computing checksums when sending packets.
The following are the allowed values for ControlType values.
The following are the allowed values for ControlType values.
The following are the allowed values for ControlType values.
DefaultTOS is the default type of service value for network endpoints.
FirstPrimaryEndpoint indicates the endpoint should be the first primary endpoint considered.
Types of gso segments.
Types of gso segments.
Types of gso segments.
NeverPrimaryEndpoint indicates the endpoint should never be a primary endpoint.
PacketLoop indicates that the packet should be handled locally.
PacketOut indicates that the packet should be passed to the link endpoint.
# Structs
DirectionStats includes packet and byte counts.
GSO contains generic segmentation offload properties.
ICMPRateLimiter is a global rate limiter that controls the generation of ICMP messages generated by the stack.
NDPConfigurations is the NDP configurations for the netstack.
NetworkEndpointID is the identifier of a network layer protocol endpoint.
NetworkHeaderParams are the header parameters given as input by the transport endpoint to the network.
NIC represents a "network interface card" to which the networking stack is attached.
NICInfo captures the name and addresses assigned to a NIC.
NICStateFlags holds information about the state of an NIC.
NICStats includes transmitted and received stats.
Options contains optional Stack configuration.
RcvBufAutoTuneParams holds state related to TCP receive buffer auto-tuning.
Route represents a route through the networking stack to a given destination.
Stack is a networking stack, with all supported protocols, NICs, and route table.
TCPCubicState is used to hold a copy of the internal cubic state when the TCPProbeFunc is invoked.
TCPEndpointID is the unique 4 tuple that identifies a given endpoint.
TCPEndpointState is a copy of the internal state of a TCP endpoint.
TCPFastRecoveryState holds a copy of the internal fast recovery state of a TCP endpoint.
TCPReceiverState holds a copy of the internal state of the receiver for a given TCP endpoint.
TCPSACKInfo holds TCP SACK related information for a given TCP endpoint.
TCPSenderState holds a copy of the internal state of the sender for a given TCP Endpoint.
TransportEndpointID is the identifier of a transport layer protocol endpoint.
TransportEndpointInfo holds useful information about a transport endpoint which can be queried by monitoring tools.
# Interfaces
GSOEndpoint provides access to GSO properties.
InjectableLinkEndpoint is a LinkEndpoint where inbound packets are delivered via the Inject method.
A LinkAddressCache caches link addresses.
A LinkAddressResolver is an extension to a NetworkProtocol that can resolve link addresses.
LinkEndpoint is the interface implemented by data link layer protocols (e.g., ethernet, loopback, raw) and used by network layer protocols to send packets out through the implementer's data link endpoint.
NetworkDispatcher contains the methods used by the network stack to deliver packets to the appropriate network endpoint after it has been handled by the data link layer.
NetworkEndpoint is the interface that needs to be implemented by endpoints of network layer protocols (e.g., ipv4, ipv6).
NetworkProtocol is the interface that needs to be implemented by network protocols (e.g., ipv4, ipv6) that want to be part of the networking stack.
RawTransportEndpoint is the interface that needs to be implemented by raw transport protocol endpoints.
ResumableEndpoint is an endpoint that needs to be resumed after restore.
TransportDispatcher contains the methods used by the network stack to deliver packets to the appropriate transport endpoint after it has been handled by the network layer.
TransportEndpoint is the interface that needs to be implemented by transport protocol (e.g., tcp, udp) endpoints that can handle packets.
TransportProtocol is the interface that needs to be implemented by transport protocols (e.g., tcp, udp) that want to be part of the networking stack.
UnassociatedEndpointFactory produces endpoints for writing packets not associated with a particular transport protocol.
# Type aliases
ControlType is the type of network control message.
GSOType is the type of GSO segments.
LinkEndpointCapabilities is the type associated with the capabilities supported by a link-layer endpoint.
PacketLooping specifies where an outbound packet should be sent.
PrimaryEndpointBehavior is an enumeration of an endpoint's primacy behavior.
TCPProbeFunc is the expected function type for a TCP probe function to be passed to stack.AddTCPProbe.