cloudflared-mirror/connection
Devin Carr 952622a965 TUN-8709: Add session migration for datagram v3
When a registration response from cloudflared gets lost on it's way back to the edge, the edge service will retry and send another registration request. Since cloudflared already has bound the local UDP socket for the provided request id, we want to re-send the registration response.

There are three types of retries that the edge will send:

1. A retry from the same QUIC connection index; cloudflared will just respond back with a registration response and reset the idle timer for the session.
2. A retry from a different QUIC connection index; cloudflared will need to migrate the current session connection to this new QUIC connection and reset the idle timer for the session.
3. A retry to a different cloudflared connector; cloudflared will eventually time the session out since no further packets will arrive to the session at the original connector.

Closes TUN-8709
2024-11-06 12:06:07 -08:00
..
connection.go TUN-8661: Refactor connection methods to support future different datagram muxing methods 2024-10-24 11:42:02 -07:00
connection_test.go TUN-7558: Flush on Writes for StreamBasedOriginProxy 2023-07-06 14:22:29 +00:00
control.go TUN-8621: Prevent QUIC connection from closing before grace period after unregistering 2024-10-07 10:51:21 -05:00
errors.go chore: Remove h2mux code 2024-10-15 13:10:30 -07:00
event.go TUN-6617: Dont fallback to http2 if QUIC conn was successful. 2022-08-12 08:40:03 +00:00
header.go chore: Remove h2mux code 2024-10-15 13:10:30 -07:00
header_test.go chore: Remove h2mux code 2024-10-15 13:10:30 -07:00
http2.go chore: Remove h2mux code 2024-10-15 13:10:30 -07:00
http2_test.go TUN-8621: Prevent QUIC connection from closing before grace period after unregistering 2024-10-07 10:51:21 -05:00
json.go TUN-3467: Serialize cf-cloudflared-response-meta during package initialization using jsoniter 2020-11-11 15:11:42 +00:00
metrics.go chore: Remove h2mux code 2024-10-15 13:10:30 -07:00
observer.go TUN-7131: Add cloudflared log event to connection messages and enable streaming logs 2023-04-12 14:41:11 -07:00
observer_test.go TUN-6583: Remove legacy --ui flag 2022-07-20 16:17:29 -07:00
protocol.go chore: Remove h2mux code 2024-10-15 13:10:30 -07:00
protocol_test.go TUN-6938: Force h2mux protocol to http2 for named tunnels 2023-02-06 11:06:02 -08:00
quic.go TUN-8661: Refactor connection methods to support future different datagram muxing methods 2024-10-24 11:42:02 -07:00
quic_connection.go TUN-8661: Refactor connection methods to support future different datagram muxing methods 2024-10-24 11:42:02 -07:00
quic_connection_test.go TUN-8661: Refactor connection methods to support future different datagram muxing methods 2024-10-24 11:42:02 -07:00
quic_datagram_v2.go TUN-8692: remove dashes from session id 2024-10-25 05:45:24 -07:00
quic_datagram_v3.go TUN-8709: Add session migration for datagram v3 2024-11-06 12:06:07 -08:00
tunnelsforha.go TUN-3471: Add structured log context to logs 2021-01-05 20:21:16 +00:00