Attualmente sto esaminando il sovraccarico DTLS durante l'esecuzione di CoAP e ho trovato una cosa strana.
L'intestazione del livello record DTLS, 13 byte, è composta da: { tipo di contenuto, 1 byte versione, 2 byte epoca, 2 byte seq_no, 6 byte lunghezza, 2 byte }
AES_CCM_128_8 ha un tag di 8 byte
Il sovraccarico DTLS per il livello record dovrebbe quindi essere 13 byte per l'intestazione del record e 8 byte per il tag, per un totale totale di 21 byte.
Ma quando guardo in wireshark, l'overhead è in realtà 29 byte.
La ragione di ciò è che epoch e seq_no sono inclusi due volte, una volta nell'intestazione del record e una volta nel payload. cioè il carico utile è epoca + seq_no + tag + coap
Questo sembra molto strano, perché duplicarlo? Sto eseguendo Californium per CoAP con il plug-in Scandium per DTLS.
Ecco un link a un file pcap link