From 6ccdf9e2028019457ddadc04f0ebc785b5b30181 Mon Sep 17 00:00:00 2001 From: Sean Sullivan Date: Tue, 16 May 2023 18:31:12 -0700 Subject: [PATCH] Initial iteration of provisional WebSockets KEP --- .../README.md | 1228 +++++++++++++++++ .../kep.yaml | 43 + .../remote-command-subprotocol.png | Bin 0 -> 26670 bytes .../spdy-architechtural-diagram.png | Bin 0 -> 41395 bytes .../stream-translator-proxy-2.png | Bin 0 -> 26298 bytes 5 files changed, 1271 insertions(+) create mode 100644 keps/sig-api-machinery/4006-transition-spdy-to-websockets/README.md create mode 100644 keps/sig-api-machinery/4006-transition-spdy-to-websockets/kep.yaml create mode 100644 keps/sig-api-machinery/4006-transition-spdy-to-websockets/remote-command-subprotocol.png create mode 100644 keps/sig-api-machinery/4006-transition-spdy-to-websockets/spdy-architechtural-diagram.png create mode 100644 keps/sig-api-machinery/4006-transition-spdy-to-websockets/stream-translator-proxy-2.png diff --git a/keps/sig-api-machinery/4006-transition-spdy-to-websockets/README.md b/keps/sig-api-machinery/4006-transition-spdy-to-websockets/README.md new file mode 100644 index 000000000000..ceb750baffde --- /dev/null +++ b/keps/sig-api-machinery/4006-transition-spdy-to-websockets/README.md @@ -0,0 +1,1228 @@ + +# KEP-4006: Transition from SPDY to WebSockets + + + + + + +- [Release Signoff Checklist](#release-signoff-checklist) +- [Summary](#summary) +- [Motivation](#motivation) + - [Goals](#goals) + - [Non-Goals](#non-goals) +- [Proposal](#proposal) + - [User Stories (Optional)](#user-stories-optional) + - [Notes/Constraints/Caveats (Optional)](#notesconstraintscaveats-optional) + - [Risks and Mitigations](#risks-and-mitigations) +- [Design Details](#design-details) + - [Background: Streaming Protocol Basics](#background-streaming-protocol-basics) + - [Background: RemoteCommand Subprotocol](#background--subprotocol) + - [Background: API Server and Kubelet UpgradeAwareProxy](#background-api-server-and-kubelet-) + - [Proposal: kubectl WebSocket Executor and Fallback Executor](#proposal--websocket-executor-and-fallback-executor) + - [Proposal: v5.channel.k8s.io subprotocol version](#proposal--subprotocol-version) + - [Proposal: API Server StreamTranslatorProxy](#proposal-api-server-) + - [Future: Kubelet StreamTranslatorProxy](#future-kubelet-) + - [Test Plan](#test-plan) + - [Prerequisite testing updates](#prerequisite-testing-updates) + - [Unit tests](#unit-tests) + - [Integration tests](#integration-tests) + - [e2e tests](#e2e-tests) + - [Graduation Criteria](#graduation-criteria) + - [Alpha](#alpha) + - [Upgrade / Downgrade Strategy](#upgrade--downgrade-strategy) + - [Version Skew Strategy](#version-skew-strategy) +- [Production Readiness Review Questionnaire](#production-readiness-review-questionnaire) + - [Feature Enablement and Rollback](#feature-enablement-and-rollback) + - [Rollout, Upgrade and Rollback Planning](#rollout-upgrade-and-rollback-planning) + - [Monitoring Requirements](#monitoring-requirements) + - [Dependencies](#dependencies) + - [Scalability](#scalability) + - [Troubleshooting](#troubleshooting) +- [Implementation History](#implementation-history) +- [Drawbacks](#drawbacks) +- [Alternatives](#alternatives) +- [Infrastructure Needed (Optional)](#infrastructure-needed-optional) + + +## Release Signoff Checklist + + + +Items marked with (R) are required *prior to targeting to a milestone / release*. + +- [ ] (R) Enhancement issue in release milestone, which links to KEP dir in [kubernetes/enhancements] (not the initial KEP PR) +- [ ] (R) KEP approvers have approved the KEP status as `implementable` +- [ ] (R) Design details are appropriately documented +- [ ] (R) Test plan is in place, giving consideration to SIG Architecture and SIG Testing input (including test refactors) + - [ ] e2e Tests for all Beta API Operations (endpoints) + - [ ] (R) Ensure GA e2e tests meet requirements for [Conformance Tests](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/conformance-tests.md) + - [ ] (R) Minimum Two Week Window for GA e2e tests to prove flake free +- [ ] (R) Graduation criteria is in place + - [ ] (R) [all GA Endpoints](https://github.com/kubernetes/community/pull/1806) must be hit by [Conformance Tests](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/conformance-tests.md) +- [ ] (R) Production readiness review completed +- [ ] (R) Production readiness review approved +- [ ] "Implementation History" section is up-to-date for milestone +- [ ] User-facing documentation has been created in [kubernetes/website], for publication to [kubernetes.io] +- [ ] Supporting documentation—e.g., additional design documents, links to mailing list discussions/SIG meetings, relevant PRs/issues, release notes + + + +[kubernetes.io]: https://kubernetes.io/ +[kubernetes/enhancements]: https://git.k8s.io/enhancements +[kubernetes/kubernetes]: https://git.k8s.io/kubernetes +[kubernetes/website]: https://git.k8s.io/website + +## Summary + + + +Some Kubernetes clients need to communicate with the API Server using a bi-directional +streaming protocol, instead of the standard HTTP request/response mechanism. A streaming +protocol provides the ability read and write arbitrary data messages between the +client and server, instead of providing a single response to a client request. +For example, the commands `kubectl exec`, `kubectl attach`, `kubectl port-forward`, +and `kubectl cp` all benefit from a bi-directional streaming protocol. Currently, +the bi-directional streaming solution for these `kubectl` commands is SPDY/3.1. For +the communication leg between `kubectl` and the API Server, this enhancement transitions +the bi-directional streaming protocol to WebSockets from SPDY/3.1 for three `kubectl` +commands: `exec`, `attach`, and `cp`. + +## Motivation + + + +The SPDY streaming protocol has been deprecated for around eight years, and by now +many proxies, gateways, and load-balancers do not support SPDY. Our effort to modernize +the streaming protocol between Kubernetes clients and the API Server using WebSockets +is necessary to enable the aforementioned intermediaries. WebSockets is a currently +supported standardized protocol (https://www.rfc-editor.org/rfc/rfc6455) that guarantees +compatibility and interoperability with the different components and programming +languages. Finally, WebSockets is preferrable to HTTP/2.0 because the updated HTTP +standard does not support streaming well. The decision to forego HTTP/2.0 is discussed +at greater length in the [Alternatives Section](##Alternatives). + +### Goals + + + +1. Transition the bi-directional streaming protocol from SPDY/3.1 to WebSockets for +`kubectl exec`, `kubectl attach`, and `kubectl cp` for the communication leg +between `kubectl` and the API Server. + +### Non-Goals + + + +1. We do not intend to initially transition the current SPDY bi-directional streaming +protocol for `kubectl port-forward`. This command requires a different subprotocol +than the previously stated three `kubectl` commands (which use the `RemoteCommand` +subprotocol). We intend to transition `kubectl port-forward` in a future release. + +2. We do not initially intend to modify *any* of the SPDY communication paths between +other cluster components other than `kubectl` and the API Server. In other words, +the current SPDY communication paths between the API Server and Kubelet, or Kubelet +and the Container Runtime will not change. + +3. We will not make *any* changes to current WebSocket based browser/javascript clients. + +## Proposal + + + +Currently, the bi-directional streaming protocols (either SPDY or WebSockets) are +initiated from clients, proxied by the API Server and Kubelet, and terminated at +the Container Runtime (e.g. containerd or CRI-O). This enhancement proposes to 1) +modify `kubectl` to request a WebSocket based streaming connection, and to 2) modify +the current API Server proxy to translate the `kubectl` WebSockets data stream to +a SPDY upstream connection. In this way, the cluster components upstream from the +API Server will not need to be changed. + +### User Stories (Optional) + + + + + +N/A + +### Notes/Constraints/Caveats (Optional) + + + +N/A + +### Risks and Mitigations + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +## Design Details + + + +**Current SPDY Streaming Architectural Diagram** + +![Current SPDY Streaming Architectural Diagram](./spdy-architechtural-diagram.png) + +### Background: Streaming Protocol Basics + +`kubectl` bi-directional streaming connections are by created by upgrading an +initial HTTP/1.1 request. By adding two headers (`Connection: Upgrade`, `Upgrade: SPDY/3.1`), +the request can initiate the streaming upgrade. And when the response returns status +`101 Switching Protocols` signalling success, the connection can then be kept open +for subsequent streaming. An example of an upgraded HTTP Request/Response for `kubectl exec` +could look like: + +**HTTP Request** +``` +POST /api/v1/…/pods/nginx/exec?command=... HTTP/1.1 +Connection: Upgrade +Upgrade: SPDY/3.1 +X-Stream-Protocol-Version: v4.channel.k8s.io +X-Stream-Protocol-Version: v3.channel.k8s.io +X-Stream-Protocol-Version: v2.channel.k8s.io +X-Stream-Protocol-Version: v1.channel.k8s.io +``` + +**HTTP Response** +``` +HTTP/1.1 101 Switching Protocols +Connection: Upgrade +Upgrade: SPDY/3.1 +X-Stream-Protocol-Version: v4.channel.k8s.io +``` + +If the upgrade is successful, one of the requested subprotocol versions is chosen +and returned in the response. In this instance, the chosen version of the subprotocol +is: `v4.channel.k8s.io`. + +### Background: `RemoteCommand` Subprotocol + +![Remote Command Subprotocol](./remote-command-subprotocol.png) + +Once the connection is upgraded to a bi-directional streaming connection, the +client and server can exchange data messages. These messages are interpreted with +agreed upon standards which are called subprotocols. The three `kubectl` commands +(`exec`, `attach`, and `cp`) communicate using the `RemoteCommand` subprotocol. Basically, +this subprotocol provides command line functionality from the client to a running +container in the cluster. By multiplexing `stdin`, `stdout`, `stderr`, and `tty` +resizing over a streaming connection, this subprotocol supports clients executing +and interacting with commands executed on a container in the cluster. An example of +`kubectl exec` running the `date` command on an `nginx` pod/container is: + +``` +$ kubectl exec nginx -- date +Tue May 16 03:34:04 PM PDT 2023 +``` + +### Background: API Server and Kubelet `UpgradeAwareProxy` + +In order to route the data streamed between the client and the container, both the +API Server and Kubelet must proxy these data messages. Both the API Server and the +Kubelet provide this functionality with the `UpgradeAwareProxy`, which is a reverse +proxy that knows how to deal with the connection upgrade handshake. + +### Proposal: `kubectl` WebSocket Executor and Fallback Executor + +This enhancement proposes adding a `WebSocketExecutor` to `kubectl`, implementing +the WebSocket client using a new subprotocol version (`v5.channel.k8s.io`). Additionally, +we propose creating a `FallbackExecutor` to address client/server version skew. The +`FallbackExecutor` first attempts to upgrade the connection to WebSockets +version five (`v5.channel.k8s.io`) with the `WebSocketExecutor`, then falls back +to the legacy `SPDYExecutor` version four (`v4.channel.k8s.io`), if the upgrade is +unsuccessful. Note that this mechanism can require two request/response trips instead +of one. While the fallback mechanism may require an extra request/response if the +initial upgrade is not successful, we believe this possible extra roundtrip is justified +for the following reasons: + +1. The upgrade handshake is implemented in low-level SPDY and WebSocket libraries, +and it is not easily exposed by these libraries. If it is even possible to modify +the upgrade handshake, the added complexity would not be worth the effort. +2. The streaming is already IO heavy, so another roundtrip will not substantially +affect the perceived performance. +3. As releases increment, the probablity of a WebSocket enabled `kubectl` communicating +with an older non-WebSocket enabled API Server decreases. + +### Proposal: `v5.channel.k8s.io` subprotocol version + +As previously mentioned, we propose incrementing the subprotocol version from four +to five: `v5.channel.k8s.io`. This version will indicate to upstream components +that `kubectl` is interested in using WebSockets between the client and the API Server +if it is supported. + +### Proposal: API Server `StreamTranslatorProxy` + +![Stream Translator Proxy](./stream-translator-proxy-2.png) + +Currently, the API Server role within client/container streaming is to proxy the +data stream using the `UpgradeAwareProxy`. This enhancement proposes to modify the +SPDY data stream between `kubectl` and the API Server by conditionally adding a +`StreamTranslatorProxy` at the API Server. If the request is for a WebSocket upgrade +of version `v5.channel.k8s.io`, the `UpgradeAwareProxy` will delegate to the +`StreamTranslatorProxy`. This translation proxy terminates the WebSocket connection, +and de-multiplexes the various streams in order to pass the data on to a SPDY connection, +which continues upstream (to Kubelet and eventually the container runtime). + +### Future: Kubelet `StreamTranslatorProxy` + +The eventual plan is to incrementally transition all SPDY communication legs to WebSockets. +After the WebSocket communication leg from `kubectl` to the API Server is proven +to work, the next communication leg to transition is the one from the API Server +to the Kubelet. Both the API Server and the Kubelet stream data messages using the +`UpgradeAwareProxy`. Since the initial plan is to modify the `UpgradeAwareProxy` +to include the `StreamTranslatorProxy`, it will be straighforward to transition +this next communication leg by integrating the `StreamTranslatorProxy` the same as +in the API Server. + +The final communication leg to transition from SPDY to WebSockets will be the one +from Kubelet to the Container Runtimes. This effort will be more work, since it will +require modifying not just Kubelet, but **all** Container Runtimes. + +### Test Plan + + + +[X] I/we understand the owners of the involved components may require updates to +existing tests to make this code solid enough prior to committing the changes necessary +to implement this enhancement. + +##### Prerequisite testing updates + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +##### Unit tests + + + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +- ``: `` - `` + +##### Integration tests + + + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +- `: ` + +##### e2e tests + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +- `: ` + +### Graduation Criteria + + + +#### Alpha + +``` +<<[UNRESOLVED @seans3]>> +TBD - currently not finished +<<[/UNRESOLVED]>> +``` + +- `WebSocketExecutor` and `FallbackExecutor` completed and functional behind a `kubectl` feature flag. +- `StreamTranslatorProxy` successfully integrated into the `UpgradeAwareProxy` behind an API Server feature flag. +- Initial unit tests completed and enabled +- Initial integration tests completed and enabled +- Initial e2e tests completed and enabled +- Additional SPDY integration and e2e tests for components other than `kubectl` to +ensure this current functionality is not adversely affected. + +### Upgrade / Downgrade Strategy + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +### Version Skew Strategy + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + + + +## Production Readiness Review Questionnaire + + + +### Feature Enablement and Rollback + + + +###### How can this feature be enabled / disabled in a live cluster? + + + +``` +<<[UNRESOLVED @seans3]>> +TBD - currently not finished +<<[/UNRESOLVED]>> +``` + +- [X] Feature gate (also fill in values in `kep.yaml`) + - Feature gate name: ClientRemoteCommandWebsockets + - Components depending on the feature gate: kubectl, API Server +- [ ] Other + - Describe the mechanism: TODO + - Will enabling / disabling the feature require downtime of the control + plane? Yes. The API Server would have to be restarted to change the value of + the feature flag. `kubectl`, however, would only need an environment variable + to change the value of the feature flag, so it would not affect the control + plane. + - Will enabling / disabling the feature require downtime or reprovisioning + of a node? No. + +###### Does enabling the feature change any default behavior? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### Can the feature be disabled once it has been enabled (i.e. can we roll back the enablement)? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### What happens if we reenable the feature if it was previously rolled back? + +###### Are there any tests for feature enablement/disablement? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +### Rollout, Upgrade and Rollback Planning + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### How can a rollout or rollback fail? Can it impact already running workloads? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### What specific metrics should inform a rollback? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### Were upgrade and rollback tested? Was the upgrade->downgrade->upgrade path tested? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### Is the rollout accompanied by any deprecations and/or removals of features, APIs, fields of API types, flags, etc.? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +### Monitoring Requirements + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### How can an operator determine if the feature is in use by workloads? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### How can someone using this feature know that it is working for their instance? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +- [ ] Events + - Event Reason: +- [ ] API .status + - Condition name: + - Other field: +- [ ] Other (treat as last resort) + - Details: + +###### What are the reasonable SLOs (Service Level Objectives) for the enhancement? + + + +###### What are the SLIs (Service Level Indicators) an operator can use to determine the health of the service? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +- [ ] Metrics + - Metric name: + - [Optional] Aggregation method: + - Components exposing the metric: +- [ ] Other (treat as last resort) + - Details: + +###### Are there any missing metrics that would be useful to have to improve observability of this feature? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +### Dependencies + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### Does this feature depend on any specific services running in the cluster? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +### Scalability + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### Will enabling / using this feature result in any new API calls? + + + +The proposed design envisions a fallback mechanism when a new `kubectl` communicates +with an older API Server. The client will initially request an upgrade to WebSockets, +but it will fallback to the legacy SPDY if it is not supported. In this version +skew scenario where the client implements the new functionality but the server does +not, there is an extra request/response. Since bi-directional streaming already is +very IO intensive, this extra request/response should not be significant. Additionally, +as releases are incremented, the probability of the version skew will continually +decrease. + + + +###### Will enabling / using this feature result in introducing new API types? + + + +No + +###### Will enabling / using this feature result in any new calls to the cloud provider? + + + +No + +###### Will enabling / using this feature result in increasing size or count of the existing API objects? + + + +``` +<<[UNRESOLVED]>> +TBD - currently not finished +<<[/UNRESOLVED]>> +``` + + + +###### Will enabling / using this feature result in increasing time taken by any operations covered by existing SLIs/SLOs? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### Will enabling / using this feature result in non-negligible increase of resource usage (CPU, RAM, disk, IO, ...) in any components? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### Can enabling / using this feature result in resource exhaustion of some node resources (PIDs, sockets, inodes, etc.)? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +### Troubleshooting + + + +###### How does this feature react if the API server and/or etcd is unavailable? + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### What are other known failure modes? + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +###### What steps should be taken if SLOs are not being met to determine the problem? + +## Implementation History + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +## Drawbacks + + + +``` +<<[UNRESOLVED]>> +TBD - currently unimplemented +<<[/UNRESOLVED]>> +``` + +## Alternatives + + + +``` +<<[UNRESOLVED @seans3]>> +TODO - currently not complete +<<[/UNRESOLVED]>> +``` + + +Ironically, HTTP/2.0 is based on SPDY. But the upgraded HTTP standard did not +surface streaming functionality. + +Reasons why HTTP/2.0 is not adequate: + +1. HTTP/2.0 does not support upgrading connections for streaming. +2. HTTP/2.0 does not surface streaming functionality. + +## Infrastructure Needed (Optional) + + + +N/A diff --git a/keps/sig-api-machinery/4006-transition-spdy-to-websockets/kep.yaml b/keps/sig-api-machinery/4006-transition-spdy-to-websockets/kep.yaml new file mode 100644 index 000000000000..aa4543f76850 --- /dev/null +++ b/keps/sig-api-machinery/4006-transition-spdy-to-websockets/kep.yaml @@ -0,0 +1,43 @@ +title: Transition from SPDY to Websockets +kep-number: 4006 +authors: + - "@seans3" +owning-sig: sig-api-machinery +participating-sigs: + - sig-cli +status: provisional +# status other states: |implementable|implemented|deferred|rejected|withdrawn|replaced +creation-date: 2023-05-15 +reviewers: + - "@aojea" + - "@ardaguclu" +approvers: + - "@deads2k" + - "@jpbetz" + +# The target maturity stage in the current dev cycle for this KEP. +stage: alpha + +# The most recent milestone for which work toward delivery of this KEP has been +# done. This can be the current (upcoming) milestone, if it is being actively +# worked on. +latest-milestone: "v1.28" + +# The milestone at which this feature was, or is targeted to be, at each stage. +milestone: + alpha: "v1.28" + beta: "v1.29" + stable: "v1.30" + +# The following PRR answers are required at alpha release +# List the feature gate name and the components for which it must be enabled +feature-gates: + - name: ClientRemoteCommandWebsockets + components: + - kube-apiserver + - kubectl +disable-supported: true + +# The following PRR answers are required at beta release +metrics: + - websocket_fallback_count diff --git a/keps/sig-api-machinery/4006-transition-spdy-to-websockets/remote-command-subprotocol.png b/keps/sig-api-machinery/4006-transition-spdy-to-websockets/remote-command-subprotocol.png new file mode 100644 index 0000000000000000000000000000000000000000..cc5264a7e9236da287793926d25861d71826d0df GIT binary patch literal 26670 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�s&0 zwWDC~V*jIO;3eYYXwHGvsEsd6UDt|bQu3=(PbR%>MSVBxaTQb9nUozys^SD4o^U$Ax4J0MI^^oMM5tD^f*dbKf>EjPm`FQ1#eUh za&X7miO=Y67jNM!9%Y z>B{xTB~&m^mPC33eU-5rR<73FVN<===_%L)`E1M4Zc>2)QnW`)6^+L6<=+0jfk4D? zn(|eM66QWf9y>$PVl!p_a3@|l;$?)|(yPtIGG7LMNE7TAS>$_HsF5lgO$ruczNWk( zBq7Ai;;|{l*ZT6>_*Rnq3)H!>LiAk-33E5r&{?UxX+B|=Ns?*RX+e2$Fy7%6FXhdi zM^AhbTu*+VuXzL<(2~U_?0t*>zIU6(>X?cSmer78Va%oJZdnBPgyKn1YwJg!j*B5Y z<6|0v`QO#mOc)Y*$^DZc|4q^^%iUVlwljq&5s2c-t?-sVM*C--tHDQu}d z>_AN7y{F2&lzQ=&Ky#%O$tftrS>1eUo&> zubMT;7^0daH(s?YNL>)&j+VFp^$k)I99{B@j^1b$OJt4RND59P^B;9K0}nX({dym3 zWS`%wdvPWYtk6)^h8lXb%#kv@MhcttEZX&#IQ%3qEu^!-z2aqXC=Jz|S(!%r(3;GZ z!xU^&2I-WIx~Ak?QcwqAgrcTIIcIREPoOxAVaf0*B=PPs6=&6DsqB+OK1FOV24BzR z8oTLAwfX&LPL4aCGGRsI2^YdNIr-QKuW6hS7`?ozCZJ*-uc6#_h3fc0U4Ww2#D2O=yd|V zOsQ4}-4cUb8C^;e27Xt5MTNP;1%Q@impwF4z zvxyE-VKA%vKe59hJW^0K+i-M5a5?_QbpB&bLdmP+!#WouJU7T5{sarPcAp*$-o$6K z)?o?XD{Fm0L7~UsmpcXP$e?6jxQ*=F7+F@vbPB?=i57yv@IV_!R74Z~cT)rKu6e`E zaUmjRn8)EHPo-Fn#6(j~M;b@nZ-Q$A*1(~#EQdNHGYQrbJwuOJvf<=|w|u16(LKCq z;2>d;V-|B7l=cAJWhY^?z=e6zeNNrbcC)lEK#hl4kL#^tj~Xo&HnoMF6jkTQN-qis zHjGOBmX?tAJKimipM)yit6TKh!bB3{t4VihQ~94iaVr;DX1bMNX4_cH{orTGLyMaC zP@Pd{VbV8Oo1v~F$Tpn?MFIQb7($0&0xZAbyRr<-y;Yjuc7lRQ*411 zqa?ARFIAWL<&ey~HYKnS`15_sQ?B-a*TxKQy^&(<{;g=H)+^~t68pqQw2KO-8-V@K z*QFaN6D)F)SB@_N;g06X-k&=*{WDLR)d9b#J$#_-aWOI16n0SG=6kCMs^)F}ii1HV zj?}Bpf%a5gCHPPfef;MtJ&zD#!vK_)TX~p%^7J7)JSbj)P-ziR4Vo9dm(R3Izxzms z)%nl#Sfy}TmtkXU7Wu}V*oM`GF@wI{H3`!c}UX3cXc46JG`l^T1{~*c1%8t3CglzPPNCi1A>vHfHIZD_DgX@qH(&Rc zg8%nu9&5)Py2|}yKL6o2>~u>$c1O|e%*{5>5w{Jo{M{`3h*G;91Bxdu{J`ga`x}DT z>DIs2%wJgFk3mWoi<$1NXo<$+I5R+3q^I?FvY+f?kQ3XvLa<2Owy8YO7}zDatbGMz z__u$41Z6MAr}Eo{D&UuL0RP**g#D4^mCuD?M^t~^Zf|S7&1ZlohW|hcVd7F-amJn5 q-IWBpjLSPW{%Ga@_v@tv)~;Sx`OhP08}^GHe=;{YZCq-2G4?;DzqV2U literal 0 HcmV?d00001 diff --git a/keps/sig-api-machinery/4006-transition-spdy-to-websockets/stream-translator-proxy-2.png b/keps/sig-api-machinery/4006-transition-spdy-to-websockets/stream-translator-proxy-2.png new file mode 100644 index 0000000000000000000000000000000000000000..af4ea5d1f0048cffa23908e89d18cda972224bab GIT binary patch literal 26298 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 JO09>_{s$(^@t6Pr literal 0 HcmV?d00001