Calculateur de débit et de temps de téléchargement
Ce calculateur de débit estime la durée d'un transfert lorsque vous connaissez la taille du fichier et la vitesse disponible.
Lancer gratuitement
Tout se passe dans votre navigateur : gratuit, sans envoi de vos données.
Saisissez la taille, choisissez son unité décimale ou binaire, puis indiquez le débit en bits ou en octets par seconde. Le résultat fournit la durée calculée en secondes, minutes et heures, ainsi qu'une répartition pratique en jours, heures, minutes et secondes. Il convient aux téléchargements, aux téléversements, aux sauvegardes, aux migrations et à tout transfert dont le débit effectif est connu.
Associez chaque valeur à la bonne unité
Une estimation fiable commence par des unités conformes aux valeurs dont vous disposez. La taille d'un fichier est généralement exprimée en octets, kilooctets, mégaoctets, gigaoctets ou téraoctets. Le calculateur accepte les unités décimales comme MB et GB, fondées sur des puissances de 1000, ainsi que les unités binaires comme MiB et GiB, fondées sur des puissances de 1024. Le débit est souvent annoncé en bits par seconde, notamment en Mbps ou Gbps, tandis que certains outils de copie affichent des octets par seconde, par exemple MB/s. Cette distinction est essentielle, car un octet contient huit bits. Un fichier de 100 MB ne prend donc pas une seconde sur une liaison à 100 Mbps, mais huit secondes dans des conditions idéales. Sélectionnez les unités données par votre source sans modifier mentalement la valeur. Le calcul normalise la taille en octets et le débit en bits par seconde afin d'éviter l'erreur d'un facteur huit.
Interprétez la durée obtenue
Le résultat représente une durée idéale avec un débit utile constant. Il répond à une question précise : si un fichier contient un certain nombre d'octets et que les données circulent continuellement à un nombre donné de bits par seconde, combien de temps faut-il ? La valeur principale est exprimée en secondes, avec des totaux équivalents en minutes et en heures, puis une répartition en unités entières. Un transfert réel peut durer davantage à cause des en-têtes de protocole, du chiffrement, des interférences sans fil, des limites du serveur, de la congestion, du stockage ou du partage de la connexion. Pour une prévision réaliste, saisissez un débit mesuré plutôt que le maximum affiché sur le routeur ou le contrat. Si les mesures fluctuent, effectuez un calcul avec le débit habituel et un autre avec une valeur prudente. Aucun pourcentage arbitraire de surcharge n'est ajouté, car il masquerait les hypothèses et fausserait une mesure déjà effective.
Planifiez téléchargements, sauvegardes et migrations
Une estimation de transfert permet de vérifier qu'un volume important tient dans un créneau donné. Avant de récupérer un jeu ou une image système, vous pouvez savoir si l'opération finira à temps. Pour envoyer une vidéo, utilisez le débit montant mesuré, souvent bien inférieur au débit descendant annoncé. Les responsables des sauvegardes peuvent contrôler qu'un lot nocturne tient dans la fenêtre de maintenance, et les équipes d'infrastructure peuvent prévoir la copie initiale d'une base de données ou d'une archive d'objets. Le calcul montre aussi pourquoi un réseau local rapide ne garantit pas un transfert distant rapide : le segment effectif le plus lent détermine la valeur à saisir. Pour l'automatisation, l'API coûte $0.002 par requête et renvoie des valeurs normalisées faciles à conserver ou comparer. Le calcul est déterministe et n'utilise aucun réseau. Une taille ou un débit négatif n'a pas de sens physique, et un débit nul ne termine jamais le transfert ; ces entrées déclenchent donc une erreur explicite.
Cas d’usage
Programmez un téléchargement volumineux
Vérifiez si une image système, un jeu ou un contenu multimédia sera récupéré avant l'échéance.
Contrôlez un créneau d'envoi
Employez le débit montant mesuré pour prévoir l'envoi de vidéos, de sauvegardes ou de livrables.
Préparez une migration de données
Comparez les durées à plusieurs débits effectifs avant de déplacer des archives ou des bases de données.
Questions fréquentes
Le calcul vaut-il pour la réception et l'envoi ?
Oui. L'opération est identique : indiquez le débit descendant effectif pour recevoir ou le débit montant pour envoyer.
Pourquoi distinguer bits et octets ?
Le débit est généralement exprimé en bits par seconde et les fichiers en octets. Un octet vaut huit bits ; le calculateur effectue cette conversion.
GB et GiB sont-ils identiques ?
Non. GB est décimal et vaut un milliard d'octets, tandis que GiB est binaire et vaut 1,073,741,824 octets.
Le transfert réel finira-t-il exactement à cette heure ?
Pas forcément. Le résultat suppose un débit effectif constant ; congestion, protocoles, stockage et trafic partagé peuvent prolonger l'opération.
Que se passe-t-il avec un débit nul ou une valeur négative ?
La requête renvoie une erreur de saisie, car un débit nul ne peut achever un transfert et une valeur négative n'a pas de sens.
Quel est le prix d'une requête API ?
Chaque requête API coûte $0.002. Le même calcul déterministe peut aussi être exécuté dans le navigateur.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/elec/bandwidth \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"file_size":1.5,"speed":100}'const res = await fetch("https://api.kit.forhosting.com/elec/bandwidth", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"file_size": 1.5,
"speed": 100
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/elec/bandwidth",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"file_size": 1.5,
"speed": 100
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/elec/bandwidth", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"file_size":1.5,"speed":100}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"file_size":1.5,"speed":100}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/elec/bandwidth", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"file_size": 1.5,
"speed": 100
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "elec.bandwidth",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |