Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make timeout for UDP connections configurable #6859

Closed
tazle opened this issue May 28, 2020 · 2 comments
Closed

Make timeout for UDP connections configurable #6859

tazle opened this issue May 28, 2020 · 2 comments
Labels
area/udp kind/enhancement a new or improved feature. priority/P2 need to be fixed in the future status/5-frozen-due-to-age
Projects
Milestone

Comments

@tazle
Copy link

tazle commented May 28, 2020

We are planning to push DTLS-protected UDP traffic through Traefik on its way into our system. When trying this, we noticed that Traefik forgets the UDP connections after 3 seconds (https://github.com/containous/traefik/blob/master/pkg/udp/conn.go#L17). The reporting interval for our data sources is at least 10 seconds, often 60 seconds, and sometimes longer, so they will form a new Traefik "connection" for each report.

The problem with forming a new "connection" for reach report is that DTLS does not include any kind of session id in the DTLS record, and instead relies on external identifiers (in this case UDP 4-tuple) to tie incoming packets to the correct session. With a new "connection" for each report, the source port changes for each report, which first causes a timeout and then causes a new DTLS session to be established. We would like to avoid this timeout and the cost of establishing a new DTLS session.

To reach this goal, we need to make the timeout for UDP connections configurable.

@SantoDE SantoDE added area/udp kind/enhancement a new or improved feature. priority/P2 need to be fixed in the future and removed status/0-needs-triage labels May 29, 2020
@ldez ldez added this to issues in v2 via automation Jun 17, 2020
@Lindenk
Copy link
Contributor

Lindenk commented Jun 30, 2020

+1

Honestly a timeout of 3 seconds is a pretty useless default in it's own right. Most routers keep UDP connections alive for at least 30s by default. Even if the timeout is hardcoded in traefik, 3s is unreasonably short

@kevinpollet
Copy link
Member

Closed by #6982

v2 automation moved this from issues to Done Jan 22, 2021
@ldez ldez added this to the next milestone Jan 22, 2021
@traefik traefik locked and limited conversation to collaborators Feb 22, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area/udp kind/enhancement a new or improved feature. priority/P2 need to be fixed in the future status/5-frozen-due-to-age
Projects
No open projects
v2
Done
Development

No branches or pull requests

6 participants