Today is exactly twelve years ago since we created the lib/http2.c source file in the #curl source tree, and doing HTTP would never be the same again.
The paradigm shift going from one transfer per connection to possibly multiple transfers per connection was massive and took many years until most of the bugs were ironed out.
Koutsie
in reply to daniel:// stenberg:// • • •daniel:// stenberg://
Unknown parent • • •daniel:// stenberg://
Unknown parent • • •schnedan
Unknown parent • • •@icing well, if the spec is complete and unambiguous, it should be possible to describe the problem with a state machine? Then it should be possible to implement and verify it, or?
"And if you process reqest 1 and read from its socket, you may get data for request 2. etc."
these chucks of data are not tagged somehow?
Stefan Eissing
Unknown parent • • •@schnedan Several assumption in code modelling needed to change.
Every request is still tied to a socket, a socket is now shared by many request.
And if you process reqest 1 and read from its socket, you may get data for request 2. etc.