Longueur de fibre selon le budget de pertes
Ce calculateur détermine la longueur maximale théorique d’une fibre à partir de la part de perte réservée à la fibre elle-même.
Lancer gratuitement
Saisissez la perte totale admissible en décibels et le coefficient d’atténuation en décibels par kilomètre. L’outil divise la perte disponible par l’atténuation et renvoie la distance maximale en kilomètres. Il convient aux premières études de liaisons optiques, aux comparaisons de portée, au contrôle de feuilles de calcul et aux exercices. Avant la saisie, réservez les pertes des connecteurs, épissures, coupleurs, courbures et la marge d’ingénierie.
Transformez une perte disponible en limite de distance
Le budget d’une liaison indique la puissance optique qui peut être perdue entre l’émetteur et le récepteur tout en maintenant une réception suffisante. Lorsque la part consacrée à l’atténuation répartie de la fibre est connue, la portée maximale suit une relation directe : maximum_length_km est égal à total_allowable_loss_db divisé par attenuation_db_per_km. Par exemple, une réserve de 7.5 dB et une atténuation de 0.35 dB/km donnent une portée théorique d’environ 21.428571 km. Ce résultat constitue un plafond fondé sur vos deux hypothèses, et non une garantie de fonctionnement. La réponse reprend les entrées, maximum_length_km et la formule afin que vous puissiez contrôler ou réutiliser le calcul. Les décibels conviennent à ce raisonnement, car une atténuation constante produit une perte proportionnelle à la distance. Le calculateur inverse donc la multiplication habituelle lorsque le budget est fixé et que la longueur reste inconnue. Le calcul est déterministe ; seule la distance sérialisée est arrondie à douze décimales pour stabiliser les réponses automatisées.
Préparez correctement le budget réservé à la fibre
total_allowable_loss_db doit représenter la perte encore disponible pour la fibre, et non nécessairement tout l’écart entre la puissance émise et la sensibilité du récepteur. Partez du budget optique, puis retranchez les pertes indépendantes de la distance : connecteurs, épissures, répartiteurs, coupleurs, panneaux, courbures et marge couvrant vieillissement, réparations, température, incertitude de mesure et évolutions futures. Le solde constitue la valeur à saisir. Si ces déductions épuisent le budget, aucune distance positive ne reste disponible, même si une entrée 0 renvoie correctement 0 kilomètre. Choisissez attenuation_db_per_km dans la spécification correspondant à la fibre, à la longueur d’onde et aux conditions prévues. Les valeurs à 1550 nm, 1310 nm et 850 nm peuvent être différentes. L’atténuation doit être positive, car une division par zéro ne définit aucune portée maximale finie. Seuls les nombres finis sont acceptés ; chaînes numériques, texte avec unités, budgets négatifs, atténuation nulle, infini et champs absents sont refusés. Convertissez la perte en décibels et l’atténuation en décibels par kilomètre.
Interprétez prudemment la longueur maximale
Considérez maximum_length_km comme une portée théorique reposant sur une atténuation constante et sur la réserve indiquée. La longueur de câble installée dépasse souvent la distance cartographique en raison des parcours verticaux, obstacles, boucles de service, réserves et cheminements dans les baies. Comparez donc le résultat à la longueur de câble prévue. Si plusieurs fibres présentent des coefficients différents, une seule division ne suffit pas sans coefficient équivalent justifié ; il est généralement plus clair de calculer chaque segment connu et de résoudre uniquement le segment inconnu. Le résultat ne couvre pas non plus la dispersion chromatique, la bande passante modale, la largeur spectrale de l’émetteur, la surcharge du récepteur, les effets non linéaires ou les limites du protocole. Ces facteurs peuvent imposer une portée moindre. Les fiches techniques et normes applicables restent prioritaires. Utilisez cet outil pour les contrôles de faisabilité, les comparaisons et l’automatisation reproductible avant une étude détaillée. Testez des atténuations nominales et prudentes pour mesurer leur influence. Le calcul dans le navigateur est gratuit ; chaque requête API automatisée réussie coûte $0.002.
Cas d’usage
Estimer la portée d’un avant-projet
Convertissez la part du budget réservée à la fibre en longueur maximale théorique de câble.
Comparer fibres et longueurs d’onde
Conservez la même perte admissible et comparez les portées issues de différents coefficients d’atténuation.
Contrôler une feuille de budget optique
Vérifiez indépendamment que la portée proposée correspond à la perte restante divisée par l’atténuation.
Questions fréquentes
Quelle formule est utilisée ?
Longueur maximale en km = perte totale admissible en dB ÷ atténuation en dB/km.
Faut-il inclure les connecteurs et épissures ?
Retranchez d’abord connecteurs, épissures, répartiteurs, courbures et marge du budget global. Saisissez uniquement le solde destiné à la fibre.
Pourquoi l’atténuation doit-elle être positive ?
Le calcul divise par l’atténuation. Une valeur nulle ne définit aucune limite de distance finie et ne donne donc pas de longueur maximale utile.
Le résultat garantit-il le fonctionnement de la liaison ?
Non. Il s’agit d’une limite théorique. La dispersion, la bande passante, les équipements, le parcours, les composants et la marge peuvent réduire la portée.
Quel est le prix d’un calcul par API ?
Chaque requête API réussie coûte $0.002. Le même calcul déterministe est gratuit 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/optics/fiber-length-from-loss-budget \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"total_allowable_loss_db":7.5,"attenuation_db_per_km":0.35}'const res = await fetch("https://api.kit.forhosting.com/optics/fiber-length-from-loss-budget", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"total_allowable_loss_db": 7.5,
"attenuation_db_per_km": 0.35
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/fiber-length-from-loss-budget",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"total_allowable_loss_db": 7.5,
"attenuation_db_per_km": 0.35
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/fiber-length-from-loss-budget", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"total_allowable_loss_db":7.5,"attenuation_db_per_km":0.35}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"total_allowable_loss_db":7.5,"attenuation_db_per_km":0.35}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/fiber-length-from-loss-budget", 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
{
"total_allowable_loss_db": 7.5,
"attenuation_db_per_km": 0.35
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.fiber_length_from_loss_budget",
"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. |