Fähigkeit

Traffic-Shaping und QoS pro vService

Bandbreitenlimits pro vService, Benutzer oder gemeinsam anwenden und Verkehrskapazität auf der Anwendungsschicht kontrolliert verteilen.

TR7 Traffic-Shaping und QoS pro vService ermöglicht die Verwaltung von Verkehrskapazität nicht nur nach Verbindungsanzahl oder Anfragerate, sondern nach tatsächlichem Bandbreitenverbrauch. Separate Upload- und Download-Bandbreitengrenzen können für jeden vService definiert werden. Die Funktion unterstützt drei Nutzungsmodelle: ein separates Limit pro Verbindung, ein Limit, das an eine Benutzer-, IP- oder Mandantenkennung gebunden ist, und ein gemeinsames Limit über ein Hochverfügbarkeitspaar. Dies verhindert, dass ein einzelner Mandant, eine einzelne IP oder eine einzelne umfangreiche Übertragung die gesamte Servicekapazität verbraucht. Traffic-Shaping hier ist keine komplexe Queuing-Architektur auf Netzwerkebene — es ist eine Kapazitätsgrenze, die auf Verbindungs- und Flow-Ebene angewendet wird. Operatoren können schnell Bandbreitenrichtlinien für einen vService, Mandanten, Benutzer oder riskante Verkehrsgruppe einrichten. Das Ergebnis: TR7 nimmt Bandbreitenmanagement aus dem Bereich separater Netzwerkgeräte und komplexer Systemabstimmung heraus und macht es zu einer bedingten, auditierbaren und Service-Level-Verkehrskontrolle, die direkt auf dem ADC läuft.

3
Limit-Modi: stream, per-key, shared
100.000
Maximale verfolgte Schlüssel im Per-Key-Modus
100ms
Inter-Knoten-Synchronisierungsfrequenz im Shared-Modus

Wenn Bandbreite unbegrenzt bleibt, kann ein einzelner Mandant oder ein einzelner umfangreicher Flow den gesamten Service beeinträchtigen.

Bei modernen Anwendungen werden Kapazitätsprobleme nicht allein durch die Anfragezahl gemessen. Große Datei-Downloads, Video-Streaming, API-Exporte, Backup-Traffic oder bot-gesteuerte Massendaten-Pulls können hohe Bandbreite selbst bei niedrigen Anfrageraten verbrauchen. In diesen Fällen ist ein Anfrage-Rate-Limit allein nicht ausreichend.

In Multi-Mandanten-Umgebungen wird das Problem sichtbarer. Wenn ein Mandant eine umfangreiche Datenübertragung durchführt, kann die Latenz für andere Mandanten zunehmen. Ohne eine Kapazitätsgrenze zwischen Kunden, die denselben vService nutzen, kann eine Fair-Use-Richtlinie technisch nicht durchgesetzt werden.

Konventionelles Traffic-Shaping erfordert typischerweise komplexe Queuing- und Klassen-Strukturen auf Netzwerkebene. Dieses Modell ist leistungsstark, aber das direkte Arbeiten mit L7-Signalen wie Pfad, Mandant, Benutzer, JWT-Claims oder Quell-IP auf der Anwendungslieferungsschicht ist schwierig. Debug und Change-Management für Betriebsteams wird ebenfalls schwerer.

Der richtige Ansatz besteht darin, eine verbindungs- und schlüsselbasierte Bandbreitengrenze auf ADC-Ebene anzuwenden. Verschiedene Limits sollten für einen vService, Benutzer, Mandanten oder riskante Verkehrsgruppe definierbar sein, und die Upload- und Download-Richtungen sollten unabhängig verwaltbar sein.

TR7 Traffic-Shaping und QoS pro vService steuert den Bandbreitenverbrauch auf der Anwendungslieferungsschicht mit Stream-, Per-Key- und Shared-Modi.

Unser Ansatz

TR7 wendet Bandbreitenkontrolle als Drei-Modus-Richtlinie über vService, Verkehrsschlüssel und Hochverfügbarkeitssharing an.

Upload- und Download-Grenzen werden pro vService angewendet

Upload-Traffic von Clients zum Backend und Download-Traffic vom Backend zu Clients können für jeden vService separat begrenzt werden. Dies stellt die Anwendungskapazität unter Service-Level-Kontrolle.

Stream-Modus gibt jeder Verbindung ihr eigenes Limit

Im Stream-Modus operiert jede Verbindung unter ihrer eigenen Bandbreitengrenze. Der Ressourcenverbrauch einer einzelnen Verbindung kann bei langandauernden Downloads, Uploads oder WebSocket-ähnlichen Streams begrenzt werden.

Per-Key-Modus wendet Kontingente nach Benutzer, IP oder Mandant an

Im Per-Key-Modus wird das Limit gemäß einem durch einen FX-Ausdruck erzeugten Schlüssel angewendet. Quell-IP, Benutzer, Mandanten-ID oder ein JWT-Claim-Wert können alle als Bandbreitenschlüssel dienen.

Shared-Modus bietet ein gemeinsames Kapazitätsbudget im Cluster

Im Shared-Modus ist das Bandbreitenbudget in einem Zwei-Knoten-Setup nicht auf ein einzelnes Gerät beschränkt. Ein Gesamtlimit für denselben Mandanten oder Service kann auf Cluster-Ebene konsistenter angewendet werden.

Fähigkeiten

Traffic-Shaping macht per-Verbindungs-, per-Key- und gemeinsame Bandbreitenlimits zu einer vService-Level-Richtlinie.

Drei Limit-Modi decken verschiedene Kapazitätskontrollszenarien ab

Stream-Modus wendet eine separate Grenze auf jede Verbindung an. Per-Key-Modus wendet ein gemeinsames Limit über eine IP, einen Benutzer, einen Mandanten oder einen anderen FX-Schlüssel an. Shared-Modus hilft dabei, dasselbe Limit in einem Hochverfügbarkeits-Setup über Knoten zu verteilen. Eine einzige Funktion deckt daher einfaches Verbindungslimiting, Mandantenquoten-Management und clusterweite gemeinsame Kapazitätskontrolle ab.

Upload- und Download-Limits werden unabhängig definiert

Bei einigen Services dominiert Download-Traffic; bei anderen verbraucht Upload kritische Kapazität. TR7 kann die Upload-Richtung von Clients zum Backend und die Download-Richtung vom Backend zu Clients separat begrenzen. Beispielsweise kann Upload bei einem Datei-Upload-Service enger kontrolliert werden, während Download bei einem Video-Service enger ist. Diese Trennung passt die Bandbreitenrichtlinie an das tatsächliche Verkehrsverhalten an.

FX-Schlüssel-Builder erzeugt mandanten- und benutzerspezifische Limits

Im Per-Key-Modus wird der Bandbreitenschlüssel mit der FX-Ausdrucks-Engine aufgebaut. Quell-IP, JWT-Benutzerinformationen, Mandanten-ID, ein Header-Wert oder eine beliebige Kombination davon können als Schlüssel dienen. Beispielsweise können alle Benutzer, die zum selben Mandanten gehören, eine gemeinsame Kapazitätsgrenze teilen. Dies ist ein leistungsstarker Mechanismus zur Fair-Use-Durchsetzung in Multi-Mandanten-SaaS-Modellen.

Die Per-Key-Tabelle kann große Mengen von Benutzern oder Mandanten verfolgen

Im Per-Key-Modus wird jeder Schlüssel als separater Nutzungszustand verfolgt. Schlüssel, die für einen definierten Zeitraum inaktiv waren, werden entfernt; aktive Schlüssel bleiben der Limit-Richtlinie unterworfen. Dieses Modell bietet zentralisierte Kapazitätskontrolle für Tausende von Benutzern oder Mandanten. Der Operator wendet Limits gegen einen logischen Traffic-Eigentümer an, nicht gegen individuelle Verbindungen.

Shared-Modus bewahrt das Gesamtlimit über ein Hochverfügbarkeitspaar

In aktiv-aktiv- oder aktiv-passiv-Setups kann Traffic zwischen zwei Knoten verteilt werden. Shared-Modus hilft dabei, das Bandbreitenbudget als gemeinsames Service-Verhalten angewendet zu werden, anstatt auf einen einzelnen Knoten beschränkt zu sein. Wenn ein Mandant von einem Knoten zum anderen wechselt, wird die Limit-Logik nicht gestört. Dies ist besonders wichtig für Unternehmens-SLA- und Quotenszenarien.

Bedingte Anwendung trennt Premium- und Standard-Traffic

Traffic-Shaping-Regeln können bedingt operieren. Ein Premium-Mandant kann unbegrenzt sein, ein kostenloser Mandant auf 100 Kbps begrenzt und eine verdächtige IP auf 1 Mbps eingeschränkt. Bedingungen können aus Pfad, Benutzer, Header, JWT-Claim, Quell-IP oder einem beliebigen FX-Ausdruck aufgebaut werden. Bandbreitenrichtlinie ist nicht mehr eine einzige globale Einstellung.

Mehrere Limit-Regeln können innerhalb eines vService und Pools definiert werden

Verschiedene Verkehrssegmente innerhalb desselben vService können unterschiedliche Limit-Regeln haben. Beispielsweise kann der `/download`-Pfad sein eigenes Limit haben, `/api/export` ein anderes und Standard-API-Aufrufe wieder ein anderes. Dies teilt Kapazitätskontrolle in Segmente auf, die mit dem Anwendungsverhalten ausgerichtet sind. Der Operator wendet kontextsensitives Shaping an, anstatt einer einzigen undifferenzierten Grenze.

Eine Verbindungslevel-Grenze wird auf langlebige Streams angewendet

WebSocket-, großer-Datei-Download- oder langandauernde Streaming-Verbindungen können klassische anfragenbasierte Limits umgehen. Stream-Modus wendet eine Bandbreitengrenze auf jeden solchen Flow an. Eine einzige lange Verbindung wird daran gehindert, Servicekapazität zu erschöpfen. Dieses Modell ist wichtig für Medien-, Dateiübertragungs- und Echtzeit-Streaming-Szenarien.

Limit-Änderungen können ohne Service-Unterbrechung angewendet werden

Bandbreitenlimits können durch eine Konfigurationsänderung aktualisiert werden. Neue Limits werden auf kontrollierte Weise auf Produktions-Traffic angewendet. Dies ermöglicht eine schnelle Reaktion während Kampagnen, vermuteten DDoS-Ereignissen, Mandantenquoten-Änderungen oder temporären Kapazitätseinschränkungen. Betriebsteams müssen nicht auf eine separate Netzwerkgeräteänderung warten.

Monitoring zeigt, welcher Schlüssel sein Limit verbraucht

Im Per-Key-Modus kann der Nutzungszustand für jeden Benutzer, jede IP oder jeden Mandanten beobachtet werden. Der Operator kann sehen, welcher Schlüssel sich seiner Quotengrenze nähert. Diese Information ist wertvoll für Kundensupport, Sicherheitsanalyse und Kapazitätsplanung. Limit-Verletzungsereignisse können mit Logs und SIEM-Pipelines verbunden werden.

Eine Ratenbegrenzung kann auf verdächtigen Traffic bei DDoS-Mitigation angewendet werden

Nicht jeder verdächtige Flow muss sofort blockiert werden. TR7 kann ein niedriges Bandbreitenlimit auf riskante IPs, ASNs, Pfade oder Verhaltensgruppen anwenden. Dies reduziert die Auswirkungen eines Angriffs, während eine vollständige Trennung legitimer Benutzer in False-Positive-Situationen vermieden wird. Der Ansatz passt zu einem abgestuften Verteidigungsmodell.

Funktioniert als transparente und vorhersehbare Verbindungslevel-Flusskontrolle

Diese Funktion ist kein komplexes Queuing-System auf Netzwerkebene oder Hardware-QoS-Mechanismus. TR7 wendet eine Bandbreitengrenze auf Verbindungs- und Flow-Ebene an. Diese Grenze ist unkompliziert auf vService-, Schlüssel- und Bedingungsebene zu verwalten. Der Operator definiert klar, wie viel Kapazität jeder Service oder Benutzer erhält.

Operative Tiefe

Traffic-Shaping sollte zusammen mit Limit-Modus, Schlüsseldesign, Upload- und Download-Richtung, langlebigen Flows, Cluster-Sharing und Audit-Sichtbarkeit geplant werden.

01

Limit-Modus-Auswahl

Stream-Modus eignet sich für per-Verbindungs-Limits, Per-Key-Modus für per-Benutzer- oder per-Mandanten-Limits und Shared-Modus für ein gemeinsames Limit im Cluster. Die Wahl des falschen Modus kann das erwartete Kapazitätsverhalten brechen. Das Richtlinienziel sollte zuerst geklärt werden.

02

Schlüsseldesign

Der im Per-Key-Modus verwendete Schlüssel bestimmt, wem das Limit tatsächlich gehört. Quell-IP ist in einigen Umgebungen ausreichend; Mandanten- oder Benutzerinformationen können ein genaueres Quotenmodell liefern. Bei mehreren Benutzern hinter NAT kann IP allein nicht fair sein.

03

Upload- und Download-Trennung

Upload- und Download-Richtungen haben unterschiedliche Ressourcenauswirkungen. Große Datei-Uploads verbrauchen Backend-Ingress-Kapazität; Downloads verbrauchen Egress-Kapazität. Diese beiden Richtungen sollten separat begrenzt werden.

04

Langlebige Verbindungen

WebSocket-, Stream- und Dateiübertragungs-Verbindungen können für einen längeren Zeitraum offen bleiben. Per-Verbindungs-Limits machen den Ressourcenverbrauch in diesen Flows vorhersehbarer. Timeout- und Bandbreitenlimit-Einstellungen sollten zusammen bewertet werden.

05

Cluster-Sharing

Shared-Modus kann für gemeinsames Budget-Verhalten in Zwei-Knoten-Setups verwendet werden. Das Ziel ist, dass die Limit-Richtlinie konsistent bleibt, wenn sich die Traffic-Verteilung zwischen Knoten verschiebt. Dieses Verhalten ist für kritische Mandanten-SLAs wichtig.

06

Audit und Alarmierung

Schlüssel, die einen Limit-Schwellenwert erreichen, können protokolliert werden. SIEM-seitige Alarmierung kann für pro-Mandanten-, pro-Benutzer- oder pro-IP-Quotenverletzungen konfiguriert werden. Diese Information ist sowohl für Sicherheitsbetrieb als auch für Kundensupport nützlich.

Wann zu verwenden

Bandbreitenkontingente für SaaS-Mandanten durchsetzen

In einer Multi-Mandanten-SaaS-Umgebung kann eine separate Kapazitätsgrenze für jeden Mandanten definiert werden. Die Mandanten-ID wird als Schlüssel verwendet, und alle Benutzer, die zum selben Mandanten gehören, teilen das gemeinsame Limit.

Unterschiedliche Geschwindigkeiten für Premium- und kostenlose Tarife liefern

Premium-Kunden kann ein höheres Bandbreitenlimit gegeben werden und kostenlosen Benutzern ein niedrigeres. Der Tarifunterschied wird in der ADC-Richtlinie verwaltet, ohne Logik in Anwendungscode einzubetten.

Qualitätslevel-Ratenlimits bei Media-Streaming anwenden

Verschiedene Qualitätsstufen bei Video- oder Media-Services erfordern unterschiedliche Bandbreiten. TR7 kann eine Download-Grenze basierend auf Pfad oder Benutzer-Abo-Tarif anwenden.

Verdächtigen Traffic verlangsamen, anstatt ihn zu blockieren

Während eines vermuteten DDoS- oder Bot-Ereignisses kann Traffic unter ein niedriges Rate-Limit gestellt werden, anstatt vollständig abgeschnitten zu werden. Dies reduziert den Angriffseinfluß, während eine vollständige Trennung für echte Benutzer in False-Positive-Fällen vermieden wird.

Separate Kapazitätsrichtlinien für internen und externen Traffic

Interne API-Aufrufe können unbegrenzt bleiben, während Traffic aus dem Internet begrenzt wird. Die Trennung wird zentral mit Quell-IP-, Pfad- oder Header-Bedingungen vorgenommen.

Bestimmte Endpoints während Werbekampagnen drosseln

Bestimmte Endpoints können während E-Commerce-Kampagnen plötzliche Traffic-Spitzen erhalten. TR7 wendet eine temporäre Bandbreitengrenze auf Checkout- oder Kampagnen-APIs an, um die Service-Stabilität zu erhalten.

Häufig gestellte Fragen

Wie wähle ich zwischen Stream-, Per-Key- und Shared-Modus?
Stream-Modus wendet ein separates Limit auf jede Verbindung an und eignet sich für langlebige Flows wie WebSocket oder große Dateiübertragungen. Per-Key-Modus wendet ein gemeinsames Limit gegen einen FX-Schlüssel wie Benutzer, IP oder Mandant an und wird für Multi-Mandanten-Quotenszenarien bevorzugt. Shared-Modus verteilt dasselbe Budget zwischen zwei Knoten in einem Hochverfügbarkeitspaar. Das Richtlinienziel sollte zuerst geklärt werden — der falsche Modus kann das erwartete Kapazitätsverhalten brechen.
Können Upload- und Download-Limits separat definiert werden?
Ja. TR7 kann die Upload-Richtung von Clients zum Backend und die Download-Richtung vom Backend zu Clients unabhängig begrenzen. Beispielsweise kann Upload bei einem Datei-Upload-Service enger kontrolliert werden, während Download bei einem Video-Service enger ist. Die unabhängige Verwaltung der beiden Richtungen passt die Bandbreitenrichtlinie an das tatsächliche Verkehrsverhalten an.
Wie wird ein Schlüssel im Per-Key-Modus aufgebaut, und wie viele Schlüssel können verfolgt werden?
Der Schlüssel wird mit der FX-Ausdrucks-Engine aufgebaut. Quell-IP, JWT-Benutzerinformationen, Mandanten-ID, ein Header-Wert oder eine beliebige Kombination davon können als Schlüssel dienen. Die Stick-Table im Per-Key-Modus kann bis zu 100.000 aktive Schlüssel verfolgen. Schlüssel, die 3.600 Sekunden lang inaktiv waren, werden automatisch bereinigt.
Wie funktioniert Shared-Modus in einem Hochverfügbarkeits-Setup?
Im Shared-Modus tauschen die beiden Knoten den Bandbreitenbudget-Status über UDP-Synchronisierung in 100-ms-Intervallen aus. Wenn der Traffic eines Mandanten zwischen Knoten wechselt, wird die Limit-Logik nicht gestört. Dieses Modell ist besonders wichtig für die Garantie von Mandantenisolation in Unternehmens-SLA- und Quotenszenarien.
Ist diese Funktion dasselbe wie Linux tc oder Hardware-QoS-Systeme?
Nein. TR7 Traffic-Shaping ist eine Verbindungslevel-Flusskontrolle, die eine Bandbreitengrenze auf Verbindungs- und Flow-Ebene anwendet. Es handelt sich nicht um eine Kernel-Level-Queuing-Architektur wie Linux tc oder HTB, noch ist es ein Hardware-QoS-Mechanismus. Dieser Ansatz arbeitet direkt mit L7-Signalen wie Pfad, Mandant, Benutzer oder JWT-Claims auf der Anwendungslieferungsschicht, mit deutlich geringerer Komplexität.
Was passiert, wenn ein Limit überschritten wird, und können diese Ereignisse überwacht werden?
Wenn eine Verbindung oder ein Schlüssel ihr Limit erreicht, wird sie gedrosselt — Traffic wird nicht abgeschnitten, sondern auf die Bandbreitengrenze reduziert. Limit-Verletzungsereignisse können protokolliert und mit einer SIEM-Pipeline verbunden werden. Im Per-Key-Modus kann der Operator in Echtzeit beobachten, welcher Mandant, welche IP oder welcher Benutzer sein Kontingent verbraucht.

Verkehrskapazität auf vService- und Mandantenebene steuern

Bandbreitenmanagement auf den ADC verlagern. Kapazitätsrichtlinien mit Stream-, Per-Key- und Shared-Modi einrichten — kein separates Netzwerkgerät oder komplexe Queuing-Architektur erforderlich.