I’m a third year student of HEIA-FR for bachelor of Network and security.
I have a semester project which consist of implementing in MitMproxy a view of the HTTP/2 layer traffic. The target for my school is to give the possibility to the student to see how the HTTP/2 protocol work. By example : how the HTTP/2 stream work or which type of frame we can found. Actually with MitMproxy we can see only the HTTP/1.1 layer although HTTP/2 is supported (with Hyper H2).
I did some on work on MitMproxy to analyse how MitMproxy work. And actually I’m working on the design and implementation.
We would be happy to know if the design that I made for these new features is good from the community point of view.
The idea is to implement a new flow in the channel for the HTTP/2 layer. For this design I was inspired from the HTTP/1 and RawTCP implementation.
For this I found 2 solutions:
Solution 1: For this flow I will create some new classes. The Http2Flow class will be the main class for this new flow. Each object of this class will contains on object of the class Http2Frame. I made some derived class for each HTTP/2 frame types.
Solution 2: The second solution is to use event class from HyperH2. So the classes Http2Flow will contains a list of
I don’t know if gave you enough explanation about my idea. If not, I’m available for any questions.