# Bits, bytes e os dois significados de quilo: por que um arquivo de 56k leva oito segundos num modem de 56k

> A conta em que toda conversa sobre redes se apoia e que quase todo mundo erra por pouco: um byte tem oito bits, velocidade de link se mede em bits e tamanho de arquivo em bytes, e quilo quer dizer 1000 em todo lugar, menos onde quer dizer 1024; em 1998, o IEC deu prefixos próprios ao quilo de 1024. Por que um disco de 1 TB aparece como 931 sem faltar nada, por que um link de 100 Mbit/s entrega no máximo 11,87 MB/s de payload TCP (pela RFC 2544 e pelo tamanho mínimo dos headers) e o exemplo resolvido que uma calculadora do site deste autor já trazia em 2004. Com o NIST, a página do ls do GNU, as recomendações ITU-T V.90 e G.704, o IEEE 802.3-2022 e as RFCs.

Source: https://ronutz.com/pt-BR/learn/bits-bytes-and-the-two-kinds-of-kilo  
Updated: 2026-10-04  
Related tools: https://ronutz.com/pt-BR/tools/bits-bytes, https://ronutz.com/pt-BR/tools/mtu-mss, https://ronutz.com/pt-BR/tools/cidr

---

Em 2004, o site deste autor, o nutzmann.net, tinha uma página que fazia uma pergunta e já trazia a resposta: quanto tempo um modem de "56k" leva para transferir um arquivo de "56k"? A ideia era o leitor responder um segundo e errar. O 56k do modem são 56 000 bits por segundo; o 56k do arquivo são 56 kilobytes de 1024 bytes, ou seja, 57 344 bytes, ou 458 752 bits; a resposta certa é pouco mais de oito segundos. Vinte e dois anos depois, o modem sumiu, mas o erro continua. Hoje ele aparece com links de gigabit e arquivos de gigabytes, na fatura de egress (o tráfego de saída) da nuvem e na janela de backup, e tem as mesmas três causas: bits contra bytes, prefixos decimais contra prefixos binários e a taxa nominal do link contra o que de fato chega à aplicação. Este artigo trata de uma causa de cada vez, e a [calculadora de bits, bytes e vazão](https://ronutz.com/pt-BR/tools/bits-bytes), que descende daquela página de 2004, faz a conta exata.

## Bits para links, bytes para arquivos

Um byte tem oito bits, e cada uma dessas unidades tem o seu lugar, por uma convenção mais antiga do que a maioria das pessoas que a seguem. A velocidade de um link é dada em bits por segundo: uma porta Ethernet de 100 Mbit/s, uma fibra de 1 Gbit/s, um modem de 56 000 bit/s (o título da própria recomendação ITU-T V.90 fala em "data signalling rates of up to 56 000 bit/s downstream and up to 33 600 bit/s upstream"). Já o tamanho de arquivo, a capacidade de disco e a memória são dados em bytes. Numa transferência, um volume medido em bytes passa por um link medido em bits, então em algum ponto da conta é preciso aplicar o fator oito; quando um download que "devia levar um minuto" leva oito, em geral foi esse passo que ficou de fora.

Os símbolos ajudam, desde que sejam respeitados: b minúsculo é bit e B maiúsculo é byte, então 100 Mb/s e 12,5 MB/s são a mesma velocidade. Datasheets e dashboards nem sempre respeitam essa regra, e é por isso que a calculadora, quando encontra um prefixo maiúsculo com b minúsculo (Kb, Mb), avisa que leu o valor em bits e que vale a pena conferir.

## Os dois significados de quilo

É desta parte que saem os chamados no suporte. No Sistema Internacional de Unidades, quilo quer dizer 1000; mega, 1 000 000; giga, 10^9; e assim por diante. Um kilobyte, portanto, são 1000 bytes. Só que a memória do computador vem em potências de dois, e durante décadas se usou "kilobyte" para dizer 1024 bytes, porque 1024 é a potência de dois mais próxima de 1000, um costume que a página do NIST sobre os prefixos registra. Os dois significados conviveram por décadas com o mesmo símbolo, e a diferença entre eles aumenta a cada prefixo: 2,4 % no quilo, 4,86 % no mega, 7,37 % no giga, 10 % no tera e 12,6 % no peta.

Em dezembro de 1998, a Comissão Eletrotécnica Internacional aprovou nomes e símbolos para os múltiplos binários, que saíram em janeiro de 1999 como IEC 60027-2, Emenda 2, e hoje fazem parte da IEC 80000-13: kibi (Ki, 2^10), mebi (Mi, 2^20), gibi (Gi, 2^30), tebi (Ti, 2^40), pebi (Pi, 2^50) e exbi (Ei, 2^60). A página do NIST sobre os prefixos diz com todas as letras que eles "are not part of the International System of Units (SI)" e que, no SI, "mega will mean 1 000 000". Um kibibyte são 1024 bytes e um kilobyte são 1000; um mebibyte são 1 048 576 bytes e um megabyte são 1 000 000. A página de 2004 já trazia um aviso: a calculadora usava "o padrão amplamente adotado pelo mercado, em vigor desde antes da nova regulamentação do IEC aprovada em 1998" e mudaria "quando o novo padrão for de fato adotado na prática". Essa prática nunca virou regra geral, e é por isso que uma calculadora de hoje precisa mostrar as duas leituras.

No dia a dia, a consequência é o disco que parece menor do que deveria. Um disco vendido como 1 TB guarda 1 000 000 000 000 bytes, que é o que o prefixo do fabricante quer dizer. Um sistema operacional que conta em potências de 1024 divide esse número por 2^40 e mostra 931; se ainda chamar o resultado de "GB" em vez de "GiB", o dono conclui que sumiram 69 GB. Não sumiu nada: o número só foi lido na outra convenção. As ferramentas que mostram tamanhos dizem qual convenção usam, se você perguntar: a página do ls do GNU descreve a opção `-h, --human-readable` como a que mostra "sizes like 1K 234M 2G" e `--si` como "likewise, but use powers of 1000 not 1024"; e o argumento SIZE do mesmo comando lê K, M, G, T, P, E, Z, Y, R, Q como potências de 1024, KB, MB etc. como potências de 1000, e KiB como igual a K. Ou seja, para o mesmo programa, um K sozinho vale 1024 e um KB vale 1000; a calculadora lê um prefixo sozinho do mesmo jeito e deixa isso claro.

## Taxa nominal versus payload

A terceira causa é mais sutil. Um link de 100 Mbit/s transmite 100 000 000 bits por segundo no fio, mas nem todos esses bits são do arquivo. Cada frame (quadro) leva um header e um trailer Ethernet, um preâmbulo e um inter-frame gap (o intervalo entre frames), um header IP e um header de transporte, e só o que sobra é payload, a carga útil. A RFC 2544, a metodologia de benchmarking para equipamentos de rede, registra esse custo do Ethernet no Apêndice C: no fio, um frame ocupa "Preamble 64 bits, Frame 8 x N bits, Gap 96 bits", onde N é o tamanho do frame do endereço de destino até o frame check sequence. No maior frame padrão, de 1518 bytes, isso dá 1538 bytes no fio, e a tabela do apêndice mostra que um link de 10 Mb/s carrega no máximo 812 desses frames por segundo: 10 000 000 dividido pelo produto de 1538 por 8.

Dentro do frame de 1518 bytes, o campo de payload, de 1500 bytes, leva o pacote IP; o header IPv4 tem no mínimo 20 octetos (RFC 791), e o header TCP, no mínimo 20 octetos (RFC 9293). A RFC 8200 junta as duas coisas numa frase, quando explica por que o MSS no IPv6 é 20 octetos menor: no IPv4, o MSS é "the maximum packet size ... minus 40 octets (20 octets for the minimum-length IPv4 header and 20 octets for the minimum-length TCP header)", e no IPv6 é "minus 60 octets, because the minimum-length IPv6 header ... is 20 octets longer". Então, um segmento TCP cheio sobre IPv4 leva 1460 bytes de dados da aplicação em 1538 bytes de tempo no fio: 94,93 %. Sobre IPv6, são 1440 bytes, ou 93,63 %; com UDP sobre IPv4, cujo header tem 8 octetos (RFC 768), são 1472 bytes, ou 95,71 %. Por isso, um link de 100 Mbit/s entrega no máximo 11,87 MB/s de payload TCP, e não 12,5, e isso antes de descontar os ACKs, o slow start e qualquer perda. A calculadora oferece esses valores como presets de eficiência, mostra a conta e deixa você digitar qualquer outra porcentagem.

## O exemplo resolvido, com a conta exata

A página de 2004 dizia "pelo menos 8,2 segundos". Com a conta exata: 56 KiB são 57 344 bytes, ou 458 752 bits; a 56 000 bits por segundo, isso dá 8,192 segundos. Se o mesmo arquivo for escrito como 56 kB, na leitura decimal, são 56 000 bytes, ou 448 000 bits: exatamente 8 segundos. Os 0,192 s que separam as duas respostas vêm só da diferença de 2,4 % entre os dois significados de quilo. O botão Exemplo da calculadora carrega este caso, e a tabela de conexões dela mostra o tempo do mesmo arquivo num canal ISDN de 64 kbit/s, num T1 de 1 544 kbit/s, num E1 de 2 048 kbit/s (as duas taxas que estão no título da ITU-T G.704) e em todas as velocidades de Ethernet que o IEEE 802.3-2022 especifica, de 10 Mb/s a 400 Gb/s, com as linhas que já existiam na tabela de 2004 devidamente marcadas.

## Quatro hábitos que acabam com a discussão

1. Escreva a unidade com a letra certa, maiúscula ou minúscula: b para bits, B para bytes, e o /s quando for uma taxa. "100 Mb" não é um tamanho.
2. Escreva Ki, Mi, Gi quando quiser dizer potências de 1024, e leia k, M, G como potências de 1000, a não ser que o programa que mostra o valor diga outra coisa.
3. Divida por oito antes de dividir pela taxa e, depois, divida pela eficiência da pilha de protocolos, e não por um.
4. Quando a transferência for mais lenta do que a conta indica, desconfie da janela TCP e do round trip (o tempo de ida e volta) antes de desconfiar do link: a conta dá o teto, não a previsão.

## Fontes

- [NIST: Prefixes for binary multiples](https://physics.nist.gov/cuu/Units/binary.html) (lido em 2026-10-04): a aprovação do IEC em dezembro de 1998, a IEC 60027-2 Emenda 2 (1999-01), a tabela de nomes e símbolos, e a nota de que não fazem parte do SI
- [ls(1), GNU coreutils (man7.org)](https://man7.org/linux/man-pages/man1/ls.1.html) (lido em 2026-10-04): -h, --si e o argumento SIZE
- [RFC 2544: Benchmarking Methodology for Network Interconnect Devices, Apêndice C](https://www.rfc-editor.org/rfc/rfc2544#appendix-C) (lida em 2026-10-04): preâmbulo, quadro e intervalo; 812 quadros por segundo de 1518 bytes a 10 Mb/s
- [RFC 791: Internet Protocol](https://www.rfc-editor.org/rfc/rfc791) (lida em 2026-10-04): o mínimo do cabeçalho IPv4
- [RFC 8200: IPv6, seção 8.3](https://www.rfc-editor.org/rfc/rfc8200#section-8.3) (lida em 2026-10-04): as deduções de 40 e 60 octetos do MSS
- [RFC 9293: TCP](https://www.rfc-editor.org/rfc/rfc9293) (lida em 2026-10-04): o mínimo do cabeçalho TCP
- [RFC 768: UDP](https://www.rfc-editor.org/rfc/rfc768) (lida em 2026-10-04): o cabeçalho de 8 octetos
- [ITU-T V.90 (09/98)](https://www.itu.int/rec/T-REC-V.90/en) (lida em 2026-10-04): 56 000 bit/s de descida
- [ITU-T G.704 (10/98)](https://www.itu.int/rec/T-REC-G.704/en) (lida em 2026-10-04): os níveis de 1544 e 2048 kbit/s
- [IEEE 802.3-2022](https://standards.ieee.org/ieee/802.3/10422/) (lido em 2026-10-04): velocidades de 1 Mb/s a 400 Gb/s
- [nutzmann.net, Calculadora de bits e bytes (2004), Internet Archive](https://web.archive.org/web/20041009131549/http://nutzmann.net:80/bitsandbytes.htm) (lido em 2026-10-04): o exemplo resolvido da calculadora de 2004, a sua nota sobre o IEC e a sua tabela de conexões
- [ntz.com.br, Calculadora e conversão de bits e bytes (2013), Internet Archive](https://web.archive.org/web/2013/http://ntz.com.br/bitsandbytes.html) (lido em 2026-10-04): a mesma calculadora no site de 2013, com a sua tabela de prefixos do IEC
