>
> Not quite -- since PING and SETTINGS are hop-to-hop they don't need to be
> exposed above the framing layer. Segments are end-to-end, so they have to
> be exposed above the framing layer (ie the HTTP message layer).
>
The intent (and clarification is clearly necessary) is that they are a
property of the stream. If you are forwarding the stream you must maintain
that property.
I agree that once you parse the stream into an HTTP message, if you do so
using an API which does not expose the segments that property will be lost.
But this is true for any push as well (you need to change the APIs to
somehow expose the associated request).
The goal here is that record-based protocols (WS for example) can be
deployed over the HTTP/2 session layer and be reliably transported through
transparent intermediaries (in particular HTTP/2 firmware devices that do
load-balancing) without those intermediaries needing to understand the
protocol.