antrea-io / antrea

Kubernetes networking based on Open vSwitch
https://antrea.io
Apache License 2.0
1.65k stars 362 forks source link

Support other protocols (UDP, SCTP) in NodePortLocal #2395

Open antoninbas opened 3 years ago

antoninbas commented 3 years ago

Describe what you are trying to solve At the moment NodePortLocal only supports TCP. TCP is hardcoded in the iptables rules: https://github.com/antrea-io/antrea/blob/7faeaaf54ff06c4ea33399d34f6d5c208b1c3bcf/pkg/agent/nodeportlocal/rules/iptable_rule.go#L76 And https://github.com/antrea-io/antrea/pull/2385 only adds port binding for TCP sockets.

We should look into supporting the other protocols supported by K8s (UDP, SCTP) in the NodePortLocal implementation.

Describe the solution you have in mind Based on the protocol type for a Service port in an NPL-enabled K8s Service, we should adjust the protocol used in the iptables rules and adjust the port binding logic. I am not too familiar with SCTP, but at least for UDP this seems quite straightforward.

Describe how your solution impacts user flows Less confusing for users who can now use NPL with all Services.

Test plan E2e tests should include some tests cases for UDP / SCTP.

antoninbas commented 3 years ago

Switching milestone to v1.4

tnqn commented 2 years ago

UDP has been supported in v1.4. Postponing SCTP to v1.5 or later.

github-actions[bot] commented 2 years ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days

github-actions[bot] commented 2 years ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days

github-actions[bot] commented 9 months ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days

github-actions[bot] commented 6 months ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days

github-actions[bot] commented 3 months ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment, or this will be closed in 90 days