const secondNodePortSvcName … // GetHTTPContent returns the content of the given url by HTTP. func GetHTTPContent(host string, port int, timeout time.Duration, url string) (string, error) { … } // GetHTTPContentFromTestContainer returns the content of the given url by HTTP via a test container. func GetHTTPContentFromTestContainer(ctx context.Context, config *e2enetwork.NetworkingTestConfig, host string, port int, timeout time.Duration, dialCmd string) (string, error) { … } // DescribeSvc logs the output of kubectl describe svc for the given namespace func DescribeSvc(ns string) { … } // CheckSCTPModuleLoadedOnNodes checks whether any node on the list has the // sctp.ko module loaded // For security reasons, and also to allow clusters to use userspace SCTP implementations, // we require that just creating an SCTP Pod/Service/NetworkPolicy must not do anything // that would cause the sctp kernel module to be loaded. func CheckSCTPModuleLoadedOnNodes(ctx context.Context, f *framework.Framework, nodes *v1.NodeList) bool { … } // execSourceIPTest executes curl to access "/clientip" endpoint on target address // from given Pod to check if source ip is preserved. func execSourceIPTest(sourcePod v1.Pod, targetAddr string) (string, string) { … } // execHostnameTest executes curl to access "/hostname" endpoint on target address // from given Pod to check the hostname of the target destination. // It also converts FQDNs to hostnames, so if an FQDN is passed as // targetHostname only the hostname part will be considered for comparison. func execHostnameTest(sourcePod v1.Pod, targetAddr, targetHostname string) { … } // createSecondNodePortService creates a service with the same selector as config.NodePortService and same HTTP Port func createSecondNodePortService(ctx context.Context, f *framework.Framework, config *e2enetwork.NetworkingTestConfig) (*v1.Service, int) { … } // testEndpointReachability tests reachability to endpoints (i.e. IP, ServiceName) and ports. Test request is initiated from specified execPod. // TCP and UDP protocol based service are supported at this moment func testEndpointReachability(ctx context.Context, endpoint string, port int32, protocol v1.Protocol, execPod *v1.Pod, timeout time.Duration) error { … }