Mo ou Mio, Mbit/s ou Mo/s : tailles de fichiers et débits

Mis à jour :

Un disque neuf de 1 To s’affiche comme 931 Go, une connexion à 100 Mbit/s télécharge à 12 Mo/s, et le même fichier fait 4,7 Go sur un ordinateur et 4,4 Go sur un autre. Rien ne manque dans aucun de ces cas. Deux choses différentes se passent : certains comptent les tailles par pas de 1 000 et d’autres par pas de 1 024, et les débits se mesurent en bits alors que les fichiers se mesurent en octets. Ce guide démêle les deux, calculs à l’appui. En français, l’octet s’écrit o (Mo, Go, To) là où l’anglais écrit B (MB, GB, TB).

Un octet, c’est huit bits

Un bit est un simple 0 ou 1 ; un octet est un groupe de huit bits, de quoi coder une lettre de texte simple. En français, le bit s’abrège bit ou b et l’octet o : Mbit est un mégabit et Mo un mégaoctet, huit fois plus. Le stockage et les fichiers se comptent en octets ; le débit d’une connexion se compte en bits par seconde, écrit Mbit/s ou Mbps.

Deux façons de compter : 1 000 ou 1 024

Dans le Système international d’unités, kilo veut dire 1 000, méga un million et giga un milliard, et le BIPM, qui tient le système, précise que ces préfixes désignent strictement des puissances de 10 : un kilobit vaut 1 000 bits et non 1 024. Or la mémoire des ordinateurs va par puissances de deux, et pendant des décennies on a appelé kilooctet 1 024 octets. Pour lever l’ambiguïté, la CEI (IEC) a approuvé en décembre 1998 des préfixes binaires propres : kibi (Ki), mébi (Mi), gibi (Gi), tébi (Ti), aujourd’hui dans la norme IEC 80000-13.

DécimalOctetsBinaireOctetsLe binaire est plus grand de
1 ko1 0001 Kio1 0242,4 %
1 Mo1 000 0001 Mio1 048 5764,9 %
1 Go1 000 000 0001 Gio1 073 741 8247,4 %
1 To1 000 000 000 0001 Tio1 099 511 627 77610,0 %

L’écart grandit à chaque palier : faible pour une photo, important pour un disque. Beaucoup de programmes utilisent encore les valeurs binaires avec les noms décimaux, d’où la confusion : un « Go » à l’écran peut vouloir dire l’un ou l’autre.

Unités lisibles

Qui compte comment

Les fabricants de disques et de cartes mémoire, et les fournisseurs d’accès, utilisent les unités décimales : un disque de 1 To contient 1 000 000 000 000 octets, et la mention d’emballage d’Apple indique « 1GB = 1 billion bytes », un milliard d’octets. Les appareils Apple affichent eux aussi le stockage en unités décimales depuis OS X Snow Leopard et iOS 11 ; la page d’assistance d’Apple précise qu’iOS 10 et antérieur et OS X Leopard et antérieur comptaient en binaire.

L’Explorateur de fichiers de Windows affiche des valeurs binaires avec des noms décimaux : son Ko vaut 1 024 octets, un choix que Raymond Chen, de Microsoft, a expliqué en 2009 par le respect de l’usage établi. Sous Linux, ls -h, df -h et du -h utilisent des puissances de 1 024 avec les lettres K, M et G, et --si passe aux puissances de 1 000, comme le décrit le manuel de GNU coreutils. Les puces mémoire suivent le JEDEC, l’organisme de normalisation des semi-conducteurs, dont le dictionnaire définit méga pour la capacité mémoire comme 1 048 576 : 8 Go de RAM font donc 8 Gio.

OùCompte enUn disque de 1 To s’affiche comme
Emballage des disques, débits internetdécimal (1 000)1 To
macOS et iOS actuelsdécimal (1 000)1 To
Explorateur de fichiers de Windowsbinaire (1 024), étiqueté Ko, Mo, Go931 Go
Linux ls -h / df -hbinaire (1 024), lettres K, M, G932G (931,32 arrondi au-dessus)
Barrettes de RAMbinaire (1 024)—

Pourquoi un disque neuf paraît plus petit

Un disque vendu pour 1 To contient 1 000 000 000 000 octets. Divisé par 1 073 741 824, le nombre d’octets d’un gibioctet, cela donne 931,32, que Windows affiche 931 Go. Tous les octets sont là ; seule l’unité a changé. La capacité formatée est encore un peu plus faible, car le système de fichiers réserve de la place pour ses propres registres.

Vendu pourOctetsEn unités binaires
64 Go64 000 000 00059,60 Gio
256 Go256 000 000 000238,42 Gio
512 Go512 000 000 000476,84 Gio
1 To1 000 000 000 000931,32 Gio
2 To2 000 000 000 0001 862,65 Gio (1,82 Tio)
4 To4 000 000 000 0003 725,29 Gio (3,64 Tio)

Débit de connexion : Mbit/s face à Mo/s

Les débits internet et réseau sont donnés en bits par seconde, et toujours en unités décimales : 100 Mbit/s font 100 000 000 bits par seconde. Pour les comparer à un compteur de téléchargement en mégaoctets par seconde, divisez par huit. Les logiciels de téléchargement et les navigateurs affichent souvent des unités binaires, ce qui réduit encore un peu le chiffre.

ConnexionMégaoctets par seconde (Mo/s)Mébioctets par seconde (Mio/s)
10 Mbit/s1,251,19
50 Mbit/s6,255,96
100 Mbit/s12,511,92
300 Mbit/s37,535,76
500 Mbit/s62,559,60
1 Gbit/s125119,21

Ce sont des plafonds. Chaque paquet transporte aussi des adresses et des données de contrôle : un paquet ordinaire de 1 500 octets porte au moins 20 octets d’en-tête IPv4 et 20 d’en-tête TCP, donc au plus 1 460 octets, environ 97 %, sont des données du fichier, et Ethernet ou le Wi-Fi ajoutent leur propre encapsulation. Le signal Wi-Fi, un serveur chargé ou d’autres appareils sur la ligne coûtent en général davantage, c’est pourquoi une ligne à 100 Mbit/s dépasse rarement 11 à 12 Mo/s.

Combien de temps dure un téléchargement

Multipliez la taille en octets par huit pour obtenir des bits, puis divisez par le débit en bits par seconde. Un jeu de 4 Go sur une connexion à 100 Mbit/s : 4 000 000 000 × 8 ÷ 100 000 000 = 320 secondes, 5 minutes 20 au mieux. 50 Go à 300 Mbit/s prennent 22 minutes 13 secondes. Le débit montant des connexions domestiques est souvent bien plus faible que le débit descendant : envoyer le même fichier peut prendre plusieurs fois plus longtemps.

Temps de téléchargement

Écrire les tailles sans ambiguïté

Quand le chiffre exact compte, dans un contrat, une spécification ou un ticket d’assistance, écrivez le préfixe binaire quand vous voulez dire 1 024 : 512 Mio, 16 Gio. Quand vous écrivez Mo ou Go, employez-les au sens décimal, comme les fabricants de stockage et les opérateurs. Pour les débits, distinguez bits et octets et écrivez Mbit/s ou Mo/s en toutes lettres.

Questions fréquentes

Un kilooctet, c’est 1 000 ou 1 024 octets ?

Officiellement 1 000 ; 1 024 octets font un kibioctet (Kio). Dans l’usage courant, et dans Windows, kilooctet veut encore souvent dire 1 024 : vérifiez lequel utilise chaque programme.

Pourquoi ma connexion à 100 Mbit/s télécharge-t-elle à 12 Mo/s ?

Parce que le débit est en mégabits et le téléchargement en mégaoctets : 100 divisé par 8 font 12,5 Mo/s, et les en-têtes des paquets et le reste du trafic prennent un peu plus.

Pourquoi le même fichier n’a-t-il pas la même taille sur deux ordinateurs ?

L’un compte en unités décimales et l’autre en unités binaires. Un fichier de 4 700 000 000 octets fait 4,7 Go sur un Mac et environ 4,4 Go dans Windows, qui divise par 1 073 741 824.

8 Go de RAM, est-ce la même chose que 8 Go de stockage ?

Non. La mémoire se compte en binaire : 8 Go de RAM font 8 Gio, soit 8 589 934 592 octets ; 8 Go de stockage font 8 000 000 000 octets.

Que veulent dire Mbit/s, Mb/s et Mbps ?

Les trois désignent des mégabits par seconde. Mo/s, ou MB/s en anglais, désigne des mégaoctets par seconde, huit fois plus.

Références

  1. BIPM — The International System of Units (SI Brochure, 9th edition), chapter 3: SI prefixes
  2. NIST — Prefixes for binary multiples (IEC, December 1998)
  3. Apple Support — How storage capacity is measured on Apple devices
  4. Raymond Chen, The Old New Thing — Why does Explorer use the term KB instead of KiB? (June 2009)
  5. GNU Coreutils manual — Block size (-h and --si)
  6. JEDEC dictionary — mega (M) as a prefix to units of semiconductor storage capacity
  7. RFC 791 — Internet Protocol (IPv4 header)
  8. RFC 9293 — Transmission Control Protocol (TCP header)
  9. RFC 894 — Transmission of IP datagrams over Ethernet networks (1,500-byte maximum)

Guides associés