envoyproxy/envoy

Compression and decompression of gRPC through envoy proxy

Open

#41.893 aberto em 7 de nov. de 2025

Ver no GitHub
 (3 comments) (0 reactions) (0 assignees)C++ (5.373 forks)batch import
area/compressionarea/httpbughelp wantedno stalebot

Métricas do repositório

Stars
 (27.997 stars)
Métricas de merge de PR
 (Mesclagem média 8d) (378 fundiu PRs em 30d)

Description

What is the proper way to use Envoy to compress and decompress application/grpc?

Description I am trying to compress and decompress application/grpc through 2 envoy proxies. One handling the compression and one the decompression. However, I find through Wireshark that the Envoy Decompressor filter breaks the gRPC protocol by failing to set the END_STREAM flag on the final DATA frame, which causes the backend server to immediately send a TCP Reset.

A similar issue has been opened since 2019 but not resolved.

Given this issue, what is the most stable and reliable implementation of compression and decompression through Envoy? Is implementing a header mutation filter to remove the trailers the recommended solution?

Guia do colaborador