Skip to content

quic: add QuicNetworkConnectivityObserver and EnvoyQuicNetworkObserverRegistry interfaces#35912

Merged
RyanTheOptimist merged 20 commits intoenvoyproxy:mainfrom
danzh2010:networkchangeregistry
Sep 3, 2024
Merged

quic: add QuicNetworkConnectivityObserver and EnvoyQuicNetworkObserverRegistry interfaces#35912
RyanTheOptimist merged 20 commits intoenvoyproxy:mainfrom
danzh2010:networkchangeregistry

Conversation

@danzh2010
Copy link
Contributor

Commit Message: Introduce a new classes QuicNetworkConnectivityObserver and EnvoyQuicNetworkObserverRegistry/EnvoyQuicNetworkObserverRegistryFactory in Envoy to register each QUIC connection for network changes. An EnvoyQuicNetworkObserverRegistryFactory object can be passed into ClusterManager::createNetworkObserverRegistries() interface to create a thread local EnvoyQuicNetworkObserverRegistry object. Each new Quic connection will register its own QuicNetworkConnectivityObserver to this registry.

Additional Description: QuicNetworkConnectivityObserver currently has an empty implementation. And createNetworkObserverRegistries() will be called by Envoy Mobile with its own network change aware implementation of the registry factory.

Risk Level: low, new interface not in use
Testing: added new unit tests
Docs Changes: N/A
Release Notes: N/A
Platform Specific Features: N/A

Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Signed-off-by: Dan Zhang <danzh@google.com>
@danzh2010
Copy link
Contributor Author

/assign @RyanTheOptimist

@danzh2010 danzh2010 changed the title Networkchangeregistry quic: add QuicNetworkConnectivityObserver and EnvoyQuicNetworkObserverRegistry interfaces Aug 29, 2024
@danzh2010
Copy link
Contributor Author

/retest

Signed-off-by: Dan Zhang <danzh@google.com>
Copy link
Contributor

@RyanTheOptimist RyanTheOptimist left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great! Thanks for doing this.

@danzh2010
Copy link
Contributor Author

/retest

@danzh2010
Copy link
Contributor Author

@RyanTheOptimist RyanTheOptimist merged commit b506422 into envoyproxy:main Sep 3, 2024
@abeyad
Copy link
Contributor

abeyad commented Sep 4, 2024

Is this a real test failure?
https://dev.azure.com/cncf/envoy/_build/results?buildId=178930&view=logs&jobId=b6a93b2f-c9eb-5004-2b80-f11f3e41d6df&j=b6a93b2f-c9eb-5004-2b80-f11f3e41d6df&t=b9aeef91-fdf0-5be6-08f0-d544c00fc771

It also happen on main, so not related. I will debug into it.

@danzh2010 I wonder if this relates to #35652 ? Running the test locally with --runs_per_test=100 doesn't fail for me though..

@danzh2010
Copy link
Contributor Author

Is this a real test failure?
https://dev.azure.com/cncf/envoy/_build/results?buildId=178930&view=logs&jobId=b6a93b2f-c9eb-5004-2b80-f11f3e41d6df&j=b6a93b2f-c9eb-5004-2b80-f11f3e41d6df&t=b9aeef91-fdf0-5be6-08f0-d544c00fc771

It also happen on main, so not related. I will debug into it.

@danzh2010 I wonder if this relates to #35652 ? Running the test locally with --runs_per_test=100 doesn't fail for me though..

No, I'm fixing it in #35960

mum4k pushed a commit to envoyproxy/nighthawk that referenced this pull request Sep 10, 2024
- Update the ENVOY_COMMIT and ENVOY_SHA in bazel/repositories.bzl to the latest Envoy's commit.
- Update .bazelrc to envoyproxy/envoy#35978
- Update ci/run_envoy_docker.sh to envoyproxy/envoy#35926 and envoyproxy/envoy#35660
- Update tools/gen_compilation_database.py to envoyproxy/envoy#36018 and envoyproxy/envoy#35811
- Update source/client/process_impl.cc to match interface change in envoyproxy/envoy#35912

Signed-off-by: Tom Zhang <4367421+tomjzzhang@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants