Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WebSocket protocol support #205

Closed
jpeach opened this issue Jun 4, 2020 · 20 comments · Fixed by #1979
Closed

WebSocket protocol support #205

jpeach opened this issue Jun 4, 2020 · 20 comments · Fixed by #1979
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/backlog Higher priority than priority/awaiting-more-evidence.

Comments

@jpeach
Copy link
Contributor

jpeach commented Jun 4, 2020

This issue is closely related to #204.

There should be a way for applications to indicate that they want WebSocket streams for HTTP/1.1 or HTTP/2.

One way to do this could be a WebSocketRoute as a peer to HTTPRoute. Another way cold be to add a field somewhere under the HTTPRoute API.

Some ingress controllers implement this by a flag on the HTTP virtual host or forwarding route (e.g. Contour puts it on the Route).

@jpeach jpeach added the kind/feature Categorizes issue or PR as related to a new feature. label Jun 4, 2020
@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Sep 2, 2020
@jpeach
Copy link
Contributor Author

jpeach commented Sep 4, 2020

/remove-lifecycle stale

Not stale, but also not for v1alpha1.

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Sep 4, 2020
@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 3, 2020
@fejta-bot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle rotten

@k8s-ci-robot k8s-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jan 2, 2021
@hbagdi
Copy link
Contributor

hbagdi commented Jan 12, 2021

/remove-lifecycle rotten
/lifecycle frozen

@k8s-ci-robot k8s-ci-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. labels Jan 12, 2021
@masus04
Copy link

masus04 commented Jul 21, 2022

Any progress on this? Seems like an essential feature.

@shaneutt
Copy link
Member

There's been no progress that I'm personally aware of. If you have a strong interest and use case it might be worth joining the monday night community meeting and bringing this one up for discussion 🤔

@shaneutt
Copy link
Member

So as it turns out, there's some discussion about this going on in #1244. I'm going to mark this as help wanted as we need an owner to drive this forward (hopefully as a direct result of that discussion).

@shaneutt
Copy link
Member

Given that this has been marked help wanted for a long time without anyone with a strong interest to champion it and move it forward, it doesn't seem like we've got any momentum behind this currently. As such we'll consider this closed as "not planned" for the moment. This doesn't mean we'll never do it it just means it doesn't currently have any priority: if you're interested in taking this issue on and moving it forward please comment here and we would be happy to re-open it.

@shaneutt shaneutt closed this as not planned Won't fix, can't repro, duplicate, stale Mar 21, 2023
@dprotaso
Copy link
Contributor

@shaneutt this falls under the backend properties

https://gateway-api.sigs.k8s.io/geps/gep-1282/

I would reopen this

@dprotaso
Copy link
Contributor

/reopen

@k8s-ci-robot
Copy link
Contributor

@dprotaso: Reopened this issue.

In response to this:

/reopen

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@k8s-ci-robot k8s-ci-robot reopened this Mar 22, 2023
@arkodg
Copy link
Contributor

arkodg commented Mar 22, 2023

some implementations like Envoy Gateway and Istio have web socket upgrade enabled by default for HTTP 1.1

@shaneutt
Copy link
Member

@dprotaso are you specifically interested in driving this forward, may we assign you?

@dprotaso
Copy link
Contributor

Yup please do - I'm going to try tackling specifying backend protocol which would cover this

@shaneutt
Copy link
Member

Awesome, thank you! Let us know how we can support you in your efforts 🖖

/assign @dprotaso

@shaneutt shaneutt removed help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. labels Mar 23, 2023
@shaneutt
Copy link
Member

shaneutt commented Apr 5, 2023

We want this feature, but just a heads up @dprotaso we consider it low priority until v1.0.0/GA is complete and don't believe we will have bandwidth for it until then.

@dprotaso
Copy link
Contributor

dprotaso commented Apr 5, 2023

I'm hoping this can be covered by - #1911

@dprotaso
Copy link
Contributor

For those following I created a GEP PR that I believe would #1979 address this issue. PTAL with and leave comments.

@dprotaso
Copy link
Contributor

From the GEP-1911 discussion folks seem onboard with using the K8s appProtocol as the mechanic to specify upstream protocol. I have yet to rewrite the GEP but I've created an k8s/enhancement (kubernetes/enhancements#3996) to see if we can define kubernetes.io/websocket and kubernetes.io/websocket-secure

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/backlog Higher priority than priority/awaiting-more-evidence.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants