As part of recent perf comparison with nginx:
During high throughput scenarios Envoy does a bunch of extra copies of body data for HTTP as well as raw payload data for TCP proxy.
Many of these copies can be eliminated by changing the filter and connection interfaces to take pointers to buffers where applicable. Those buffers can then be written out by reference and finally freed.