The key point here is using oblivious http (OHTTP) relays. WebTransport would be simpler and more efficient but not a requirement to make that work, I think.
It is a requirement since WebSocket is not really HTTP, but a hack that breaks out of HTTP to keep a TCP socket open. WebTransport lets you do the same kind of streaming split into genuine HTTP packets.