net/quinn: Configure QUIC roles (server/client)
QUIC is a server-client protocol (similar to TCP). The current implementation considers quinnquicsink
as a QUIC client and quinnquicsrc
as a QUIC server. I would like to open a discussion on how to make roles configurable in these elements. The following two options came to my mind:
- Add new properties to
quinnquicsink/quinnquicsrc
:- set
role=client
to make the element act as a QUIC client, androle=server
to act as a QUIC server
- set
- Add new elements:
- similar to TCP, introduce new elements like
quinnquicclientsink,quinnquicclientsrc
, etc.
- similar to TCP, introduce new elements like
I am more on the side of option 1) since it requires less element and code duplication. In addition, we have a working in-house implementation. I am also aware that it might make element configuration slightly more complicated due to extra parameters (e.g., client-address
will be availabe for client and server too) that might lead to user confusion.
Comments are welcome.