Skip to content

Commit

Permalink
add a Mermaid diagram
Browse files Browse the repository at this point in the history
  • Loading branch information
marten-seemann committed Sep 19, 2024
1 parent 3cbbe75 commit 80b3c07
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions content/docs/masque/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,19 @@ CONNECT-UDP ([RFC 9298](https://datatracker.ietf.org/doc/html/rfc9298)) enables

A client establishes an HTTP/3 connection to a proxy. It requests the proxying of UDP packets to a remote server by sending an Extended CONNECT ([RFC 9220](https://datatracker.ietf.org/doc/html/rfc9220)) HTTP request. If the proxy accepts the proxying request, it opens a UDP socket to the target and forwards UDP packets between the client and the target. Between the client and the proxy, UDP datagrams are sent on the QUIC connection using HTTP Datagrams ([RFC 9279](https://datatracker.ietf.org/doc/html/rfc9279)).

```mermaid
sequenceDiagram
participant Client
participant Proxy
participant Server as Target Server
Client->>Proxy: Extended CONNECT Proxying Request
Proxy-->>Proxy: Open UDP Socket to Server
loop UDP Proxying
Client->>Proxy: UDP payload sent in HTTP Datagram
Proxy->>Server: UDP Packet
Server-->>Proxy: UDP Packet
Proxy->>Client: UDP payload sent in HTTP Datagram
end
```

0 comments on commit 80b3c07

Please sign in to comment.