首页 > 解决方案 > Envoy 代理服务器:如何保留套接字选项?

问题描述

因此,我需要在客户端为 HTTP/2 流量设置 DSCP 字节,这是一个 IP 标头。这很容易在发送 HTTP POST 请求的套接字上使用 setsockopt IP_TOS 来完成。

但是,我们在我们的项目中使用了 istio,因此所有流量都通过 envoy 代理,并且我验证了 envoy 代理在代理时剥离了所有 IP 标头。

即,客户端使用 DSCP 集向特使发送 http post -> 特使向实际接收者发送 HTTP 发布,但 setsockopt 设置的所有 IP 标头都消失了。

查看特使文档,似乎解决方案是使用“tcp 过滤器”,并且特使已经内置了一系列过滤器:https ://github.com/envoyproxy/envoy/tree/main/source/extensions/transport_sockets

但是,可悲的是,文档非常神秘。但这必须是一个常见的要求,那么有谁知道如何让特使保留由 setsockopt 设置的 IP 标头?

感谢您的任何建议!

标签: istioenvoyproxy

解决方案



推荐阅读