Depois de ler no Linux ' drivers/net/tun.c
e sys/net/if_tun.c
do OpenBSD, cheguei à conclusão de que ambos usam filas para os pacotes.
Especificamente, o Linux usa uma fila dentro do driver tun / tap e o OpenBSD usa a fila da pilha de rede preexistente.
Eu não testei manualmente a funcionalidade da fila.