Skip to content

Clean up default socket factory in TransportSocketMatcherImpl #19149

@noah8713

Description

@noah8713

Title: Allow skipping use_alpn when auto_config is set for httpprotocoloptions

Description:

As a part of istio/istio#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 istio/istio#36299

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions