>>> The pros: simpler than TLS and may be less traffic (any actual sizing, >>> either in theory or by measurements? TLS has some overhead but DNSENC >>> requires sending a key with each request. You give the numbers for >>> DNSENC but not for TLS). >> >> For a single message DNSoDTLS has a theoretical 13 byte overhead for >> header + cipher/authentication overhead. > > I count 16 bytes overhead for DTLS: 12 bytes for header, and typically 4 > bytes for authentication tag. But Stephane was asking about TLS (not DTLS), > and TLS doesn't have the 48-bit sequence number or 16-bit epoch (they are > maintained internally with TLS, and not transmitted on the wire), so TLS > should have 8 bytes overhead (if my math is right) and of course the TCP > header is bigger than the UDP header. (Sorry, in a plane at the moment.) > All those numbers are steady-state, after (D)TLS handshake.
Hi All, Sorry - I missed this discussion initially. Talking about post handshake then… (I verified by capturing DNS-over-TLS off the wire (getdns <-> Unbound) - pcap file attached) - the TCP header is at least 12 bytes bigger than UDP (more depending on options) - the TLS record layer header is 5 bytes ( ContentType type; ProtocolVersion version; uint16 length;). So not a huge difference overall between DTLS and TLS here, I think. - Also using TLS 1.2 and TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 for a small selection of ‘normal’ size queries (40-100 bytes) the encrypted payload is at most ~26 bytes larger than the unencrypted UDP payload (the difference includes the 2 byte Message Length field required for TLS/TCP). Sara.
TLS_vs_UDP_size.pcap
Description: Binary data
_______________________________________________ dns-privacy mailing list [email protected] https://www.ietf.org/mailman/listinfo/dns-privacy
