commit 2bc6dc7543f6f774c5cfdb7d80e0654b3034e8ab
parent e2177e7c6dfa54e933864ed49758c7dfdc1b39d5
Author: Martin Schanzenbach <schanzen@gnunet.org>
Date: Thu, 22 Aug 2024 16:52:17 +0200
add y sc paragraph
Diffstat:
1 file changed, 29 insertions(+), 0 deletions(-)
diff --git a/draft-gnunet-communicators.xml b/draft-gnunet-communicators.xml
@@ -1333,6 +1333,35 @@ SetupCipher(REC_ID, MSK):
</dl>
</section>
</section>
+ <section anchor="http3_comm" numbered="true" toc="default">
+ <name>HTTP/3 communicator</name>
+ <t>
+ The HTTP/3 <xref target="RFC9000"/> communicator operates over a bidirectional communication channel,
+ with the client initiating the connection and the server on the receiving end.
+ Once the connection is successfully established, messages are transmitted via POST and GET requests,
+ and all communication is secured using TLS.
+ </t>
+ <t>
+ Upon successfully establishing an HTTP/3 connection, the client <bcp14>MUST</bcp14> immediately transmit
+ its <tt>PeerIdentity</tt> in a POST.
+ The server will store this PeerIdentity to identify the client.
+ Following this exchange, data exchange between the client and server can proceed.
+ </t>
+ <t>
+ When the client needs to send a message, it uses a POST request to transmit the data to the server.
+ While the server cannot initiate messages independently, it can include data in its response to a
+ client's POST request.
+ </t>
+ <t>
+ To enable the server to proactively send data when the client has no data to transmit,
+ long polling is used.
+ The client sends GET requests to the server, which <bcp14>MAY</bcp14> not immediately respond
+ but instead sets a timer for each request.
+ The server responds either when the timer expires or when there is data to send.
+ Upon receiving a response, the client immediately sends a new GET request to maintain an adequate
+ number of long polling requests with the server.
+ </t>
+ </section>
<section anchor="security" numbered="true" toc="default">
<name>Security and Privacy Considerations</name>
<section anchor="security_kem" numbered="true" toc="default">