v1.14.1 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Nov 22, 2023 License: Apache-2.0 Imports: 8 Imported by: 0



portcache maintains the state about all current NodePortLocal port mappings for this Node and takes care of configuring the host accordingly.



View Source
const (
	NodePortIndex    = "nodePortIndex"
	PodEndpointIndex = "podEndpointIndex"
	PodIPIndex       = "podIPIndex"


This section is empty.


func GetPortTableKey added in v1.8.0

func GetPortTableKey(obj interface{}) (string, error)

func NodePortIndexFunc added in v1.8.0

func NodePortIndexFunc(obj interface{}) ([]string, error)

func NodePortProtoFormat added in v1.7.0

func NodePortProtoFormat(nodeport int, protocol string) string

nodePortProtoFormat formats the nodeport, protocol to string port:protocol.

func PodEndpointIndexFunc added in v1.8.0

func PodEndpointIndexFunc(obj interface{}) ([]string, error)

func PodIPIndexFunc added in v1.8.0

func PodIPIndexFunc(obj interface{}) ([]string, error)


type LocalPortOpener added in v1.2.0

type LocalPortOpener interface {
	OpenLocalPort(port int, protocol string) (io.Closer, error)

type NodePortData

type NodePortData struct {
	NodePort int
	PodPort  int
	PodIP    string
	Protocol ProtocolSocketData

func (*NodePortData) CloseSockets added in v1.4.0

func (d *NodePortData) CloseSockets() error

func (*NodePortData) ProtocolInUse added in v1.4.0

func (d *NodePortData) ProtocolInUse(protocol string) bool

type PortTable

type PortTable struct {
	PortTableCache  cache.Indexer
	StartPort       int
	EndPort         int
	PortSearchStart int
	PodPortRules    rules.PodPortRules
	LocalPortOpener LocalPortOpener
	// contains filtered or unexported fields

func NewPortTable

func NewPortTable(start, end int) (*PortTable, error)

func (*PortTable) AddRule

func (pt *PortTable) AddRule(podIP string, podPort int, protocol string) (int, error)

func (*PortTable) CleanupAllEntries

func (pt *PortTable) CleanupAllEntries()

func (*PortTable) DeleteRule

func (pt *PortTable) DeleteRule(podIP string, podPort int, protocol string) error

func (*PortTable) DeleteRulesForPod added in v1.4.0

func (pt *PortTable) DeleteRulesForPod(podIP string) error

func (*PortTable) GetDataForPodIP

func (pt *PortTable) GetDataForPodIP(ip string) []*NodePortData

func (*PortTable) GetEntry

func (pt *PortTable) GetEntry(ip string, port int, protocol string) *NodePortData

func (*PortTable) RestoreRules added in v1.2.2

func (pt *PortTable) RestoreRules(allNPLPorts []rules.PodNodePort, synced chan<- struct{}) error

RestoreRules should be called at Antrea Agent startup to restore a set of NPL rules. It is non-blocking but takes a channel parameter - synced, which will be closed when the necessary rules have been restored successfully. No other operations should be performed on the PortTable until the channel is closed.

func (*PortTable) RuleExists

func (pt *PortTable) RuleExists(podIP string, podPort int, protocol string) bool

type ProtocolSocketData added in v1.4.0

type ProtocolSocketData struct {
	Protocol string
	State    protocolSocketState
	// contains filtered or unexported fields


Path Synopsis
Code generated by MockGen.
Code generated by MockGen.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL