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

core: support ALPN (HTTP/1.1 HTTP/2 negotiation) #502

Open
rebello95 opened this issue Oct 14, 2019 · 0 comments
Open

core: support ALPN (HTTP/1.1 HTTP/2 negotiation) #502

rebello95 opened this issue Oct 14, 2019 · 0 comments

Comments

@rebello95
Copy link
Contributor

As of #417, Envoy Mobile defaults traffic to HTTP/2. Depending on the server being communicated with, however, this can potentially cause problems with ALPN if the upstream server doesn't support HTTP/2. To resolve this, Envoy Mobile should be capable of doing this negotiation between HTTP/1.1 and HTTP/2.

There's an upstream issue in Envoy tracking adding support for this: envoyproxy/envoy#3431.

Once support is added, the demo apps / liveliness CI tests should be updated to test both HTTP/1.1 and HTTP/2.

rebello95 added a commit that referenced this issue Oct 14, 2019
Updates the standard configuration to send requests over HTTP/2 by default.

Note that there are future improvements that should be made here to support negotiating between HTTP/1.1 and HTTP/2, being tracked in #502.

More info on the config change: https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/cds.proto#envoy-api-msg-cluster

Signed-off-by: Michael Rebello <[email protected]>
buildbreaker pushed a commit that referenced this issue Oct 17, 2019
gRPC codec for kotlin

We are able to hit an Envoy backed gRPC server from `lyft.com`

We ran into some issues with testing (debug pull: #495). The first is outgoing ALPN is required for gRPC connections: #502. gRPC doesn't support disabling this option when starting up a service. We'll have to revisit this effort in the future.

For now, we are primarily missing #494 for local Envoy library e2e testing

Signed-off-by: Alan Chiu <[email protected]>

Description: gRPC codec for kotlin
Risk Level: low
Testing: unit/end-to-end
Docs Changes: n/a
Release Notes: n/a
[Optional Fixes #Issue]
[Optional Deprecated:]
buildbreaker pushed a commit that referenced this issue Oct 30, 2019
Removing E2E gRPC testing infrastructure since we are unable to communicate with a vanilla gRPC service due to: #502

Signed-off-by: Alan Chiu <[email protected]>

Description: remove unused tests for grpc and protos
Risk Level: low
Testing: none
Docs Changes: n/a
Release Notes: n/a
[Optional Fixes #Issue]
[Optional Deprecated:]
junr03 added a commit that referenced this issue Feb 21, 2020
…upstream requests (#697)

Description: this PR adds the ability to decide what protocol to use for upstream requests. Note that this will be unnecessary once ALPN works for upstream requests (#502)
Risk Level: low
Testing: updated unit tests
Docs Changes: updated docs

Fixes #679 

Signed-off-by: Michael Rebello <[email protected]>

Co-authored-by: Michael Rebello <[email protected]>
@junr03 junr03 added this to the Backlog milestone Mar 19, 2020
jpsim pushed a commit to envoyproxy/envoy that referenced this issue Nov 28, 2022
Updates the standard configuration to send requests over HTTP/2 by default.

Note that there are future improvements that should be made here to support negotiating between HTTP/1.1 and HTTP/2, being tracked in envoyproxy/envoy-mobile#502.

More info on the config change: https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/cds.proto#envoy-api-msg-cluster

Signed-off-by: Michael Rebello <[email protected]>
Signed-off-by: JP Simard <[email protected]>
jpsim pushed a commit to envoyproxy/envoy that referenced this issue Nov 28, 2022
gRPC codec for kotlin

We are able to hit an Envoy backed gRPC server from `lyft.com`

We ran into some issues with testing (debug pull: envoyproxy/envoy-mobile#495). The first is outgoing ALPN is required for gRPC connections: envoyproxy/envoy-mobile#502. gRPC doesn't support disabling this option when starting up a service. We'll have to revisit this effort in the future.

For now, we are primarily missing envoyproxy/envoy-mobile#494 for local Envoy library e2e testing

Signed-off-by: Alan Chiu <[email protected]>

Description: gRPC codec for kotlin
Risk Level: low
Testing: unit/end-to-end
Docs Changes: n/a
Release Notes: n/a
[Optional Fixes #Issue]
[Optional Deprecated:]

Signed-off-by: JP Simard <[email protected]>
jpsim pushed a commit to envoyproxy/envoy that referenced this issue Nov 28, 2022
Removing E2E gRPC testing infrastructure since we are unable to communicate with a vanilla gRPC service due to: envoyproxy/envoy-mobile#502

Signed-off-by: Alan Chiu <[email protected]>

Description: remove unused tests for grpc and protos
Risk Level: low
Testing: none
Docs Changes: n/a
Release Notes: n/a
[Optional Fixes #Issue]
[Optional Deprecated:]

Signed-off-by: JP Simard <[email protected]>
jpsim pushed a commit to envoyproxy/envoy that referenced this issue Nov 28, 2022
…upstream requests (#697)

Description: this PR adds the ability to decide what protocol to use for upstream requests. Note that this will be unnecessary once ALPN works for upstream requests (envoyproxy/envoy-mobile#502)
Risk Level: low
Testing: updated unit tests
Docs Changes: updated docs

Fixes #679

Signed-off-by: Michael Rebello <[email protected]>

Co-authored-by: Michael Rebello <[email protected]>
Signed-off-by: JP Simard <[email protected]>
jpsim pushed a commit to envoyproxy/envoy that referenced this issue Nov 29, 2022
Updates the standard configuration to send requests over HTTP/2 by default.

Note that there are future improvements that should be made here to support negotiating between HTTP/1.1 and HTTP/2, being tracked in envoyproxy/envoy-mobile#502.

More info on the config change: https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/cds.proto#envoy-api-msg-cluster

Signed-off-by: Michael Rebello <[email protected]>
Signed-off-by: JP Simard <[email protected]>
jpsim pushed a commit to envoyproxy/envoy that referenced this issue Nov 29, 2022
gRPC codec for kotlin

We are able to hit an Envoy backed gRPC server from `lyft.com`

We ran into some issues with testing (debug pull: envoyproxy/envoy-mobile#495). The first is outgoing ALPN is required for gRPC connections: envoyproxy/envoy-mobile#502. gRPC doesn't support disabling this option when starting up a service. We'll have to revisit this effort in the future.

For now, we are primarily missing envoyproxy/envoy-mobile#494 for local Envoy library e2e testing

Signed-off-by: Alan Chiu <[email protected]>

Description: gRPC codec for kotlin
Risk Level: low
Testing: unit/end-to-end
Docs Changes: n/a
Release Notes: n/a
[Optional Fixes #Issue]
[Optional Deprecated:]

Signed-off-by: JP Simard <[email protected]>
jpsim pushed a commit to envoyproxy/envoy that referenced this issue Nov 29, 2022
Removing E2E gRPC testing infrastructure since we are unable to communicate with a vanilla gRPC service due to: envoyproxy/envoy-mobile#502

Signed-off-by: Alan Chiu <[email protected]>

Description: remove unused tests for grpc and protos
Risk Level: low
Testing: none
Docs Changes: n/a
Release Notes: n/a
[Optional Fixes #Issue]
[Optional Deprecated:]

Signed-off-by: JP Simard <[email protected]>
jpsim pushed a commit to envoyproxy/envoy that referenced this issue Nov 29, 2022
…upstream requests (#697)

Description: this PR adds the ability to decide what protocol to use for upstream requests. Note that this will be unnecessary once ALPN works for upstream requests (envoyproxy/envoy-mobile#502)
Risk Level: low
Testing: updated unit tests
Docs Changes: updated docs

Fixes #679

Signed-off-by: Michael Rebello <[email protected]>

Co-authored-by: Michael Rebello <[email protected]>
Signed-off-by: JP Simard <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants