bneradt commented on PR #9616:
URL: https://github.com/apache/trafficserver/pull/9616#issuecomment-1529974014

   > It doesn't seem like Proxy Verifier supports H2 CONNECT method. It doesn't 
allow me to only send `:method` and `:authority` (it thinks `:scheme` and 
`:path` are always required).
   
   Yes, you are correct. Thank you for the heads up @maskit. I filed a Proxy 
Verifier issue for this:
   
   https://github.com/yahoo/proxy-verifier/issues/252
   
   I believe all other attributes of Proxy Verifier should work with this. 
@duke8253 added support for explicit DATA frames which may be helpful here 
(although your use of the `content:` node should work as well).
   
   > And this might be because of my limited knowledge about ProxyVerifier, but 
it looks like requests and responses are tightly coupled by uuid header, and 
that makes it tricky to send a request as a request body like below. The both 
CONNECT request and the real request have uuid: 1.
   
   Yes, the Proxy Verifier server uses uuid to know what response to send. I 
think this will fit the HTTP/2 CONNECT use case well. In the body of the 
CONNECT, to keep things distinct for the reader of the test, I suggest using a 
different uuid than the parent one. Then add a separate transaction to tell the 
server how to handle that UUID request. This is similar to what is done here:
   
   
https://github.com/apache/trafficserver/blob/master/tests/gold_tests/connect/replays/connect.replay.yaml#L42
   
   But, as you noted already, things are a bit different with HTTP/2. Rather 
than the whole connection being a tunnel after the CONNECT, as it is with h1, 
only the DATA frames of the particular stream are tunneled. So the requests 
will have to happen on the client side via DATA frames, and the origin will 
parse them as regular h1 using the replay file's uuid transactions specified in 
the DATA frame/content nodes.
   
   Thanks for working on this. It's neat to get this feature working in ATS 
(and Proxy Verifier).


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to