Aller au contenu principal
CONTRÔLE DE FLUX • QUOTAS & HORAIRES

Quotas, Rate Limiting & Plages Horaires

Algorithme Token Bucket par agent, plafonds d'appels par minute et fenêtres horaires d'exécution autorisées (UTC).

Quotas, Rate Limiting & Plages Horaires

Quotas, Rate Limiting & Plages Horaires

Les agents autonomes peuvent générer des pics d'activité imprévus susceptibles de surcharger les API de destination ou d'engendrer des coûts d'infrastructure démesurés.

Boundry applique un contrôle de débit à granularité fine à l'aide de l'algorithme Token Bucket associé à des fenêtres temporelles d'exécution strictes.


1. Algorithme Token Bucket & Fenêtres Glissantes​

Chaque agent dispose d'un seau de jetons (Token Bucket) alloué pour chaque outil ou groupe d'outils sensibles :

  • Capacité de rafale (Burst Capacity) : Nombre maximal d'appels autorisés en simultané lors d'un pic soudain.
  • Taux de remplissage (Refill Rate) : Vitesse à laquelle les jetons se régénèrent par seconde ou minute.
  • Plafond quotidien (Daily Quota) : Volume maximal de requêtes autorisées sur 24 heures glissantes.

Exemple de configuration YAML​

rate_limit_policy.yaml
agent_id: "report-generator-agent"
rate_limits:
- tool_target: "generate_pdf_report"
burst_limit: 10 # Maximum 10 requêtes instantanées
refill_rate_per_min: 30 # 30 requêtes autorisées par minute
daily_quota: 1000 # Plafond de 1 000 générations par jour

- tool_target: "stripe_charge_customer"
burst_limit: 2
refill_rate_per_min: 5
daily_quota: 100

2. Restrictions par Plages Horaires (Business Hours)​

Pour les agents réalisant des opérations sensibles (paiements, envoi d'e-mails massifs, modification de droits utilisateurs), vous pouvez restreindre leur exécution aux seules heures ouvrées :

time_window_policy.yaml
name: "Restriction Heures Ouvrées Europe"
schedule:
timezone: "Europe/Paris"
allowed_days: ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY"]
start_time: "08:30"
end_time: "18:30"
action_outside_window: "QUARANTINE" # Met l'action en attente jusqu'au lendemain matin

Si l'agent tente d'exécuter un outil un dimanche à 03h00, l'action est automatiquement interceptée et mise en quarantaine pour revue par l'équipe SecOps dès la réouverture des bureaux.


3. En-têtes HTTP de Réponse 429 Too Many Requests​

Lorsque le quota ou le débit est dépassé, la passerelle renvoie immédiatement un code HTTP standardisé :

HTTP/1.1 429 Too Many Requests
Content-Type: application/problem+json
Retry-After: 18
X-RateLimit-Limit: 30
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1729512390
Corps de réponse d'erreur 429
{
"type": "https://docs.boundry.cloud/errors/rate-limit-exceeded",
"title": "Rate Limit Exceeded",
"status": 429,
"detail": "L'agent 'report-generator-agent' a dépassé son quota de 30 requêtes par minute pour l'outil 'generate_pdf_report'.",
"retry_after_seconds": 18
}