DTLS Flight Pattern Workbench

Step through DTLS handshake flights, cookie verification, retransmission, record epochs, and datagram reordering

animation
networking
security
dtls
udp
Interactive DTLS flight animation for learning how Datagram TLS makes TLS-style handshakes reliable over UDP, including HelloVerifyRequest cookies, handshake message sequences, flight retransmission, epoch changes, and DTLS 1.3 ACK differences.
Animation DTLS UDP Security Handshake Flights

DTLS Flight Pattern Workbench

Watch DTLS make a TLS-style handshake survive UDP loss and reordering. DTLS does not get TCP ordering for free, so it numbers handshake messages, groups them into flights, uses retransmission timers, and changes record epochs only after the cipher state is ready.

Step 1/1Flight progress
Flight 1Active flight
epoch 0Record epoch
UDP datagramReliability behavior

Handshake Flight Scene

Ready
No message yetHandshake messages
No fields yetReliability fields
No decision yetReceiver action

Record And Handshake State

epoch 0Record protection state
msg_seq 0Handshake sequence
timer idleRetransmission timer
cookie emptyClient reachability check

Learning Diagnosis

Flight pendingStep forward to see which side owns the next batch of handshake messages.
UDP behavior pendingDTLS must handle loss and reordering without TCP.
Security state pendingEpoch and Finished messages show when records become protected.

Flight Transcript

Quick Reference
DTLS FlightA group of handshake messages sent as one logical batch. In DTLS 1.2, receipt of the peer's next flight proves enough arrived to continue.
Cookie ExchangeDTLS 1.2 can send HelloVerifyRequest with a stateless cookie before allocating heavier handshake state.
RetransmissionWhen a timer expires, DTLS retransmits the previous flight rather than one arbitrary record.
How To Read The Animation
  • Blue arrows are client-to-server handshake datagrams.
  • Green arrows are server-to-client handshake datagrams.
  • Orange dashed arrows are retransmitted flights after timeout.
  • Purple dashed arrows show DTLS 1.3 ACK behavior, which differs from the older DTLS 1.2 implicit flight model.
Technical Accuracy Notes
  • The main scenarios model DTLS 1.2 because the original "flight pattern" terminology and HelloVerifyRequest cookie exchange are most visible there.
  • DTLS 1.2 uses handshake message sequence numbers and fragmentation fields; UDP record arrival order is not trusted.
  • DTLS 1.2 retransmits handshake flights on timeout. DTLS 1.3 changes the handshake and adds ACK messages; it does not use the same HelloVerifyRequest pattern.
  • The message lists are teaching subsets. Real cipher suites, certificate modes, PSK modes, and fragmentation details vary by deployment.
Source Links