Oktober 2017
Autor:in des Beitrags
Maximilian
Team Lead Business Apps and KI
Veröffentlicht am
18.10.2017 von Maximilian
Jetzt Blogbeitrag teilen
Xing LinkedIn Facebook Twitter
am NetScaler realisieren

Rate Limiting und Connection Limits

Wie man Rate Limiting und Connection Limits für bestimmte URLs am NetScaler realisiert, dazu hat sich unser Kollege Maximilian Leimgruber ein paar Gedanken gemacht und zwei Lösungsvorschläge erarbeitet. Nehmen wir einfach mal die zwei unbegrenzten URLs /service/test1 und /service/test2/ als Beispiel. Die Antwortzeiten bei URL /service/test1/ steigen an und wir wollen die Anzahl der Request begrenzen und der Rest soll gedropped werden. /service/test2/ hingegen soll unangetastet bleiben.

Lösungsvorschlag 1:

Nur mit Responder Policy: “Wenn die Zeit zum ersten Byte größer als x Millisekunden  und zugleich die Anzahl der Connections größer als x ist und gegebenenfalls der Aufruf dem Pfad x entspricht, dann soll gedropped werden. Deren Action kann auf DROP oder RESET gesetzt werden.

Zur Erklärung:
– GT: Größer als
– RESPTIME. Liefert die Antwortzeit als Integer in Millisekunden. Dabei handelt es sich um die durchschnittliche Zeit bis zum ersten Byte (TTFB – Time to first byte) von allen Services die an diesen virtuellen Server gebunden sind.
Usage: SYS.VSERVER(“vserver”).RESPTIME
– CONNECTIONS. Liefert die Anzahl der Verbindungen zu diesem virtuellen Server.
Usage: SYS.VSERVER(“vserver”).CONNECTIONS

Lösungsvorschlag 2:

Rate Limiting und Responder Policy: “Wenn die Zeit zum ersten Byte größer als x Millisekunden und zugleich die Anzahl der Requests pro Zeit x auf einen exakten Pfad (oder eine URL) größer als x ist, dann soll gedropped werden.
1.) Rate Limiting Selector: “Ein traffic stream selector ist ein Filter zur identifizierung einer Entität für die ein gedrosselter Zugriff gewünscht wird.”

2.) Rate Limiting Identifier: “In der Rate Limiting Identifier Policy wird definiert, wann der Grenzwert der Requests pro Zeit überschritten ist. Das gilt pro Selector, in diesem Fall also pro Pfad. Im Folgenden seht Ihr wie wir die Request Rate auf 100 pro Time Slice, also 1 pro Sekunde setzen.

3.) Responder Policy: “Diese Responder Policy muss natürlich wieder an einen LB vServer gebunden werden.”

CLI:
> sh run | grep lim
add stream selector ratelim_sel_url-path HTTP.REQ.URL.PATH_AND_QUERY
add stream selector ratelim_sel_url HTTP.REQ.URL
add ns limitIdentifier ratelim_iden_requestspermsec -threshold 100 -mode REQUEST_RATE -limitType SMOOTH -selectorName ratelim_sel_url-path
add responder policy res_pol_limit-connections "SYS.VSERVER(\"lb_vs_owa.contoso.de\").RESPTIME.GT(1000) && SYS.VSERVER(\"lb_vs_owa.contoso.de\").CONNECTIONS.GT(1000) && HTTP.REQ.URL.PATH_AND_QUERY.STARTSWITH(\"/service/test1\")" DROP
add responder policy res_pol_limit-requests "\n\nSYS.VSERVER(\"lb_vs_owa.contoso.de\").RESPTIME.GT(1000) && sys.check_limit(\"ratelim_iden_requestspermsec\") && HTTP.REQ.URL.PATH_AND_QUERY.STARTSWITH(\"/service/test1\")" DROP
bind lb vserver lb_vs_owa.contoso.de -policyName res_pol_limit-requests -priority 100 -gotoPriorityExpression END -type REQUEST
bind lb vserver lb_vs_owa.contoso.de -policyName _pol_limit-connections -priority 110 -gotoPriorityExpression END -type REQUEST

Das könnte dich auch interessieren

Webinar

Webinar – Cloud unter Kontrolle: Warum Infrastructure as Code jetzt entscheidend ist

In diesem Webinar zeigen unsere Experten anhand praxisnaher Live-Demos, wie Unternehmen mit der Microsoft Power Platform Prozesse effizient automatisieren, externe Tools ersetzen und durch klare Governance sowie ein Center of Excellence einen sicheren und nachhaltigen Betrieb sicherstellen.
Weiterlesen
Blogbeitrag

Cloud Exit Framework: Strategische Souveränität statt Panik-Exit

Strategischer Cloud Exit stärkt digitale Souveränität, Resilienz und Unabhängigkeit. Warum Exit-Fähigkeit mehr ist als Migration und strukturiert geplant werden sollte.
Weiterlesen
Webinar

Webinar – Cloud unter Kontrolle: Warum Infrastructure as Code jetzt entscheidend ist

Wenn Cloud strategisch zählt, ist Infrastructure as Code der Schlüssel zu echter Kontrolle, Stabilität und Geschwindigkeit.
Weiterlesen
Webinar

Webinar – Wie smarte Informationsklassifizierung Ihr Unternehmen schützt

Von inkonsistenten Labels zu echter Governance: Dieses Webinar erklärt, wie Informationsklassifizierung Sicherheit stärkt, Risiken senkt und KI sicherer macht.
Weiterlesen
Blogbeitrag

Datenklassifizierung als Fundament für KI-Einsatz und Voraussetzung für NIS2, DORA & KRITIS

Datenklassifizierung ist die Basis für sichere, regelkonforme Datenverarbeitung und den sinnvollen Einsatz von KI – auch im Kontext von NIS2, DORA und KRITIS.
Weiterlesen
Webinar

12.500 € verbrannt und niemand merkt’s: So verhindern Managed Services Kostenfallen und Risiken

In diesem kostenlosen Webinar erfahren Sie, wie Azure-Kostenfallen entstehen, wie Fehlkonfigurationen frühzeitig erkannt werden und welche Betriebsstandards Managed Services dafür einsetzen.
Weiterlesen
Blogbeitrag

Datenstrategie und hohe Datenqualität: Der Schlüssel für KI, Automatisierungen & Compliance

Ohne Datenstrategie keine KI: Wie Unternehmen mit hoher Datenqualität, Governance und Datenhygiene Automatisierung ermöglichen und DSGVO, NIS2, DORA & KRITIS erfüllen.
Weiterlesen
Whitepaper

ROI messbar steigern mit M365 Copilot

Erfahren Sie, wie Sie den ROI von Microsoft Copilot berechnen und KI-Adoption in messbaren Business Value verwandeln.
Weiterlesen
Blogbeitrag

Provectus Microsoft Copilot Jumpstart: Ihre Vorteile

Provectus ist Microsoft Copilot & Agents at Work Jumpstart Ready Partner und gibt die Förderung direkt an Sie weiter. So ermöglichen wir unseren Kund:innen einen finanziell erleichterten Einstieg in Microsoft Copilot und KI-Agents.
Weiterlesen
Blogbeitrag

Hessische Beauftragte für Datenschutz und Informationssicherheit (HBDI) veröffentlichen Bericht zur datenschutzkonformen Nutzung von Microsoft 365

Der HBDI bestätigt: Microsoft 365 kann unter bestimmten Bedingungen DSGVO-konform eingesetzt werden. Der Bericht ordnet rechtliche und technische Aspekte ein.
Weiterlesen
Jetzt Blogbeitrag teilen
Xing LinkedIn Facebook Twitter