Technische Rezepte
Die Citrix ADC T1-Modelle bieten erweiterte Funktionen und eine leistungsstarke Richtlinienkonfigurationssprache, mit der komplexe Entscheidungen während der Laufzeit ausgewertet werden können.
Obwohl es nicht möglich ist, alle Funktionen zu bewerten, die möglicherweise durch den T1000-Funktionen- und Richtlinienkonfigurationshandbuch freigeschaltet werden, erwägen technische Empfangs die Implementierung verschiedener Anforderungen, die von Telekommunikationsbetreibern eingeführt werden. Fühlen Sie sich frei, die Rezepte wie sie sind wiederzuverwenden oder sich an Ihre Umgebung anzupassen.
Verbindungsgrenze pro Benutzer
Das Citrix ADC T1-Modell kann so konfiguriert werden, dass die Anzahl der Verbindungen pro eindeutiger Teilnehmer-IP begrenzt wird. Bei der folgenden Konfiguration sind N gleichzeitige TCP-Verbindungen pro IP (CLIENT.IP.SRC) zulässig. Für jeden Verbindungsversuch über den konfigurierten Schwellenwert hinaus sendet T1 einen RST. Für maximal 2 gleichzeitige Verbindungen pro Benutzer:
Befehl:
add stream selector streamSel_usrlimit CLIENT.IP.SRC
add ns limitIdentifier limitId_usrlimit -threshold 2 -mode CONNECTION -selectorName streamSel_usrlimit
add responder policy respPol_usrlimit "SYS.CHECK_LIMIT("limitId_usrlimit")" RESET
bind lb vserver vsrv-wireless -policyName respPol_usrlimit -priority 1 -gotoPriorityExpression END
<!--NeedCopy-->
Glattes Einfügen/Löschen von Vserver
Viele Betreiber befürchten die Unterbrechung von TCP-Verbindungen, wenn das Citrix ADC T1-Modell für die TCP-Optimierung inline aktiviert ist oder wenn es für Wartungszwecke deaktiviert ist. Um zu vermeiden, dass vorhandene Verbindungen unterbrochen werden, wenn vserver eingeführt wird, muss die folgende Konfiguration angewendet werden, bevor vserver für die TCP-Optimierung konfiguriert oder aktiviert wird:
Befehl:
add ns acl acl-ingress ALLOW –vlan 100
add forwardingSession fwd-ingress –aclname acl-ingress
apply ns acls
<!--NeedCopy-->
Weiterleitungssitzungen sind zusätzlich zum Routing wirksam (statisch oder dynamisch oder PBR) und erstellen Sitzungseinträge für den gerouteten Datenverkehr (L3-Modus). Jede vorhandene Verbindung wird durch Weiterleiten der Sitzung aufgrund entsprechender Sitzungen behandelt, und nach Einführung von vserver beginnt es nur neue TCP-Verbindungen zu erfassen.
ACLs können so konfiguriert werden, dass nur bestimmte Ports wie vserver erfasst werden, um zu vermeiden, dass Sitzungen für unnötigen Datenverkehr erstellt werden, der Speicher verbraucht. Eine weitere Möglichkeit besteht darin, bestimmte Konfiguration nach der Aktivierung von vserver zu entfernen.
Für Wartungszwecke sollte vserver deaktiviert sein und sein Status als OUT OF SERVICE angezeigt wird. In diesem Fall beendet der vserver standardmäßig alle Verbindungen sofort. Damit vserver die vorhandenen Verbindungen weiterhin bedient und keine neuen Verbindungen akzeptiert, sollte die folgende Konfiguration angewendet werden:
Befehl:
set lb vserver vsrv-wireless –downStateFlush DISABLED
<!--NeedCopy-->
Neue Verbindungen durchlaufen die Routing-Tabelle, und entsprechende Sitzungseinträge werden aufgrund von Weiterleitungssitzungen erstellt.
Richtlinienbasierte TCP-Profilerstellung
Die Richtlinienbasierte TCP-Profilauswahl ermöglicht es Operatoren, TCP-Profil dynamisch für Clients aus verschiedenen Traffic-Domänen (z. B. 3G oder 4G) zu konfigurieren. Einige QoS-Metriken unterscheiden sich für diese Datenverkehrsdomänen. Um eine bessere Leistung zu erzielen, müssen Sie einen Teil des TCP-Parameters dynamisch ändern. Betrachten Sie einen Fall, in dem Clients von 3G und 4G denselben vserver treffen und dasselbe TCP-Profil verwenden, was sich negativ auf die Leistung einiger Clients auswirkt. AppQoE-Funktionalität kann diese Clients klassifizieren und TCP-Profil dynamisch auf vserver ändern.
Beispiel:
enable feature AppQoE
add ns tcpProfile nstcpprofile1 -WS ENABLED -SACK ENABLED -WSVal 8 -mss 1460 -maxBurst 30 -initialCwnd 16 -oooQSize 15000 -minRTO 800 -slowStartIncr 1 -bufferSize 4000000 -flavor BIC -KA ENABLED -sendBuffsize 4000000 -rstWindowAttenuate ENABLED -spoofSynDrop ENABLED -frto ENABLED -maxcwnd 1000000 -fack ENABLED -tcpmode ENDPOINT
add ns tcpProfile nstcpprofile2 -WS ENABLED -SACK ENABLED -WSVal 8 -mss 1460 -maxBurst 15 -initialCwnd 16 -oooQSize 15000 -minRTO 800 -slowStartIncr 1 -bufferSize 128000 -flavor BIC -KA ENABLED -sendBuffsize 6000000 -rstWindowAttenuate ENABLED -spoofSynDrop ENABLED -frto ENABLED -maxcwnd 64000 -fack ENABLED -tcpmode ENDPOINT
add appqoe action action_1 -priority HIGH -tcpprofile nstcpprofile1
add appqoe action action_2 -priority HIGH -tcpprofile nstcpprofile2
add appqoe policy appqoe_4G -rule "CLIENT.VLAN.ID.EQ(100)" -action action_1
add appqoe policy appqoe_3G -rule "CLIENT.VLAN.ID.EQ(200)" -action action_2
bind lb vserver vsrv-wireless -policyName appqoe_4G -priority 100
bind lb vserver vsrv-wireless -policyName appqoe_3G -priority 110
<!--NeedCopy-->
Das Citrix ADC T1-Modell kann die Teilnehmerinformationen dynamisch über die Gx- oder Radius- oder Radius- und GX-Schnittstelle empfangen und verschiedene TCP-Profile pro Teilnehmerbasis anwenden.
Befehl:
add appqoe action action_1 -priority HIGH -tcpprofile nstcpprofile1
add appqoe action action_2 -priority HIGH -tcpprofile nstcpprofile2
add appqoe policy appqoe_4G -rule "SUBSCRIBER.RULE_ACTIVE("3G")" -action action_1
add appqoe policy appqoe_3G -rule "SUBSCRIBER.RULE_ACTIVE("4G")" -action action_2
<!--NeedCopy-->
Informationen zur Integration des Citrix ADC T1-Modells in das Steuerungsebenennetz des Bedieners finden Sie unter Telco Subscriber Management.