envoyproxy/envoy

Clean up default socket factory in TransportSocketMatcherImpl

Open

#19,149 创建于 2021年12月1日

在 GitHub 查看
 (33 评论) (0 反应) (0 负责人)C++ (5,373 fork)batch import
bughelp wantedtech debt

仓库指标

Star
 (27,997 star)
PR 合并指标
 (平均合并 8天) (30 天内合并 378 个 PR)

描述

Title: Allow skipping use_alpn when auto_config is set for httpprotocoloptions

Description:

As a part of https://github.com/istio/istio/issues/36299 to enable case preserve for http1.1 headers, using auto_config breaks communication between istiod and ingress gateway as config push fails because envory rejects the clusters config with error

ALPN configured for cluster outbound|443||xx which has a non-ALPN transport socket.

For raw transport socket, if there is no alpn support where its simple tls for upstream, can we allow setting use_alpn to false as there is no over-ride option?

if (options.has_auto_config()) {
    use_http2_ = true;
    use_alpn_ = true;
  }

Goal is to ensure allowing http2 traffic to be passed via istio ingressgateway and at the same time cater to http1.1 case preserve for clusters using http1. Is there any trivial fix or suggestions to solve it optimally?

[optional Relevant Links:]

Details to reproduce in https://github.com/istio/istio/issues/36299

贡献者指南