RFC 6347
Datagram Transport Layer Security Version 1.2
Standards Track Obsoletes: RFC 4347 January 2012
Abstract: This document specifies version 1.2 of the Datagram Transport Layer Security (DTLS) protocol. DTLS provides TLS-equivalent security for datagram transport protocols such as UDP. It is designed to provide communications privacy and prevent eavesdropping, tampering, or message forgery for datagram protocols.
Canonical source: https://www.rfc-editor.org/rfc/rfc6347
| IETF Datatracker
1. Introduction
▶DTLS 1.2 adapts TLS 1.2 for unreliable datagram transport (UDP). It handles packet loss, reordering, and fragmentation that TLS assumes the transport layer handles. DTLS is used in 3GPP for Diameter over SCTP-DTLS and for securing certain management interfaces.
2. Differences from TLS 1.2
▶- Explicit record sequence numbers: Unlike TLS, DTLS includes epoch and sequence number in each record for reordering
- Retransmission timers: DTLS implements its own retransmission since UDP has no reliability
- Message fragmentation: Handshake messages can be fragmented across multiple DTLS records
- Replay protection: Optional sliding window for record-layer replay detection
- No stream cipher: Only block ciphers and AEAD are supported (no RC4)
3. Record Layer Format
▶| Field | Size | Description |
|---|---|---|
| ContentType | 1 byte | Same as TLS: handshake(22), application_data(23), alert(21) |
| ProtocolVersion | 2 bytes | DTLS 1.2 = {254, 253} |
| Epoch | 2 bytes | Incremented on each cipher state change |
| Sequence Number | 6 bytes | Per-epoch record sequence number |
| Length | 2 bytes | Length of the fragment |
| Fragment | Variable | Encrypted/authenticated record data |
4. 3GPP Usage
▶DTLS 1.2 is used in 3GPP networks in the following scenarios:
- Diameter over SCTP-DTLS: RFC 6083 defines DTLS for SCTP, used on Diameter interfaces (S6a, Gx) where IPsec is not deployed
- eNB management: OAM interfaces for base station management over UDP
- IoT/NB-IoT: Constrained device communication using CoAP over DTLS
5. Security Considerations
▶- DTLS inherits TLS security properties but adds protection against DoS via HelloVerifyRequest with stateless cookies
- Replay window size should be tuned for network characteristics (default 64 records)
- DTLS 1.2 is being superseded by DTLS 1.3 (RFC 9147) for new deployments