kubernetes: Kubernetes service can't support SCTP protocol

Is this a request for help? (If yes, you should use our troubleshooting guide and community support channels, see http://kubernetes.io/docs/troubleshooting/.): No.

What keywords did you search in Kubernetes issues before filing this one? (If you have found any duplicates, you should instead reply there.): service sctp

Is this a BUG REPORT or FEATURE REQUEST? (choose one): FEATURE REQUEST

Kubernetes version (use kubectl version):

kubectl version

Client Version: version.Info{Major:“1”, Minor:“6”, GitVersion:“v1.6.1”, GitCommit:“b0b7a323cc5a4a2019b2e9520c21c7830b7f708e”, GitTreeState:“clean”, BuildDate:“2017-04-03T20:44:38Z”, GoVersion:“go1.7.5”, Compiler:“gc”, Platform:“linux/amd64”} Server Version: version.Info{Major:“1”, Minor:“6”, GitVersion:“v1.6.0”, GitCommit:“fff5156092b56e6bd60fff75aad4dc9de6b6ef37”, GitTreeState:“clean”, BuildDate:“2017-03-28T16:24:30Z”, GoVersion:“go1.7.5”, Compiler:“gc”, Platform:“linux/amd64”}

Environment:

  • Cloud provider or hardware configuration: hardware configuration
  • OS (e.g. from /etc/os-release):

cat /etc/os-release

NAME=“CentOS Linux” VERSION=“7 (Core)” ID=“centos” ID_LIKE=“rhel fedora” VERSION_ID=“7” PRETTY_NAME=“CentOS Linux 7 (Core)” ANSI_COLOR=“0;31” CPE_NAME=“cpe:/o:centos:centos:7” HOME_URL=“https://www.centos.org/” BUG_REPORT_URL=“https://bugs.centos.org/

CENTOS_MANTISBT_PROJECT=“CentOS-7” CENTOS_MANTISBT_PROJECT_VERSION=“7” REDHAT_SUPPORT_PRODUCT=“centos” REDHAT_SUPPORT_PRODUCT_VERSION=“7”

  • Kernel (e.g. uname -a):

uname -a

Linux foss-ssc-3 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

  • Install tools: kubeadm
  • Others:

What happened: Kubernetes service can’t support SCTP as protocol: Error from server (Invalid): error when creating “tonyaw-svc.yaml”: Service “tonyaw-rf” is invalid: spec.ports[0].protocol: Unsupported value: “SCTP”: supported values: TCP, UDP

What you expected to happen: protocol should support TCP, UDP and SCTP

How to reproduce it (as minimally and precisely as possible): kind: Service apiVersion: v1 metadata: name: tonyaw-rf spec: clusterIP: None selector: app: myapp ports: - name: app protocol: SCTP port: 7890 targetPort: 7890

Anything else we need to know:

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 21 (11 by maintainers)

Commits related to this issue

Most upvoted comments

A quick test shows iptables works with SCTP.

yes, since 2003. SCTP is not new: https://git.netfilter.org/iptables/commit/?id=8f578a09b56f010d5bcd30086a8f7c8132b35d92

kernel code for matching SCTP ports has been merged in 2004: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/commit/net/ipv4/netfilter/ipt_sctp.c?id=37306cb0d818cdc3846d8ffbfe2d717125ee6a9b

kernel connection tracking code for sctp has been merged also in 2004: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/commit/net/ipv4/netfilter/ip_conntrack_proto_sctp.c?id=21b7bdf3c5b4a99573fcdc4609c469cf779d99c4

Please also note there are various other L4 protocols like udp-lite, DCCP, … - the planet doesn’t consist only of TCP+UDP (like in 1990ies)

I’m working as software architect for telco company, Our business is about delivering RAN software for 3G/4G/5G networks. All these networks are SCTP based. We are starting a new project which is about full cloudification of our software, likely by using containers & k8s. I mean here products which are used by like 1.5 billion people everyday. Is there any chance that SCTP protocol will receive full support in k8s? Including LoadBalancer? Of course we consider our customers (AT&T, T-mobile, Swisscom just to name a few) may use AWS or Google cloud for their deployments but most likely they will come with own hardware which will support SCTP loadbalancing. Is it possible that our developers can help you with adaptation for SCTP? I can look for this further if you are interested in such cooperation.