Olhando para uma pergunta anteriormente feita "Qual é a valor mínimo de SO_RCVBUF? " e este guia de programação de rede , suas suspeitas parecem corretas. Os pacotes UDP e IP seriam descartados silenciosamente porque não haveria espaço suficiente para armazenar o pacote e (pelo que sei) as conexões TCP não funcionariam porque o tamanho mínimo da janela de transferência seria maior que o buffer; em qualquer caso, você não receberia nada.
Por que o tamanho mínimo do buffer de soquete é tão pequeno, provavelmente é um artefato histórico na documentação. Procurando na fonte do Linux v4.0 (linux / include / net / sock .h) , parece que o tamanho mínimo real de um pouco maior (2048 + o tamanho alinhado de sk_buff) e foi por algum tempo . Meu palpite sobre por que o mínimo documentado é tão baixo é permitir o acesso bruto aos pacotes de células ATM, que eram 48-53 bytes , mas isso é apenas um palpite.