TCP-Konfigurationen

TCP-Konfigurationen für eine Citrix ADC Appliance können in einer Entität namens TCP-Profil angegeben werden, bei der es sich um eine Sammlung von TCP-Einstellungen handelt. Das TCP-Profil kann dann Diensten oder virtuellen Servern zugeordnet werden, die diese TCP-Konfigurationen verwenden möchten.

Ein Standard-TCP-Profil kann so konfiguriert werden, dass die TCP-Konfigurationen festgelegt werden, die standardmäßig global auf alle Dienste und virtuellen Server angewendet werden.

Hinweis:

Wenn ein TCP-Parameter unterschiedliche Werte für den Dienst, den virtuellen Server und global aufweist, erhält der Wert der am meisten spezifischen Entität (den Dienst) die höchste Priorität. Die Citrix ADC Appliance bietet auch andere Ansätze zur Konfiguration von TCP. Lesen Sie weiter für weitere Informationen.

Unterstützte TCP-Konfiguration

Die Citrix ADC Appliance unterstützt die folgenden TCP-Funktionen:

Verteidigung von TCP gegen Spoofing-Angriffe

Die Citrix ADC Implementierung der Fensterdämpfung ist RFC 4953-konform.

Explizite Engpassbenachrichtigung (ECN)

Die Appliance sendet eine Benachrichtigung über den Netzwerküberlastungsstatus an den Absender der Daten und ergreift Korrekturmaßnahmen für Datenüberlastung oder Datenbeschädigung. Die Citrix ADC Implementierung von ECN ist RFC 3168-konform.

Roundtrip Time Measurement (RTTM) mit der Zeitstempeloption

Damit die TimeStamp-Option funktioniert, muss sie mindestens eine Seite der Verbindung (Client oder Server) unterstützen. Die Citrix ADC Implementierung von TimeStamp Option ist RFC 1323-konform.

Erkennung von unvorsichtigen Wiederübertragungen

Dies kann mit Hilfe von TCP Duplicate Selective Acknowledgement (D-SACK) und Forward RTO-Recovery (F-RTO) erfolgen. Bei unzulänglichen Wiederübertragungen werden die Stausteuerungskonfigurationen in ihren ursprünglichen Zustand zurückgesetzt. Die Citrix ADC Implementierung von D-SACK ist RFC 2883-konform und F-RTO ist RFC 5682-konform.

Staukontrolle

Diese Funktionalität verwendet New-Reno, BIC, CUBIC, Nile und TCP Westwood Algorithmen.

Fensterskalierung

Dies erhöht die Größe des TCP-Empfangsfensters über den maximalen Wert von 65.535 Byte hinaus.

Punkte, die vor der Konfiguration der Fensterskalierung berücksichtigt werden müssen

  • Sie legen keinen hohen Wert für den Skalierungsfaktor fest, da dies negative Auswirkungen auf die Appliance und das Netzwerk haben könnte.
  • Sie konfigurieren die Fensterskalierung nur dann, wenn Sie klar wissen, warum Sie die Fenstergröße ändern möchten.
  • Beide Hosts in der TCP-Verbindung senden während des Verbindungsaufbaus eine Fensterskalierungsoption. Wenn nur eine Seite einer Verbindung diese Option setzt, wird für die Verbindung keine Fensterskalierung verwendet.
  • Jede Verbindung für dieselbe Sitzung ist eine unabhängige Fensterskalierungssitzung. Wenn beispielsweise die Anforderung eines Clients und die Antwort des Servers durch die Appliance fließt, kann eine Fensterskalierung zwischen dem Client und der Appliance ohne Fensterskalierung zwischen der Appliance und dem Server erfolgen.

TCP-Maximalüberlastungsfenster

Die Fenstergröße ist vom Benutzer konfigurierbar. Der Standardwert ist 8190 Byte.

Selektive Bestätigung (SACK)

Hierbei wird der Datenempfänger (entweder eine Citrix ADC Appliance oder ein Client) benachrichtigt den Absender über alle erfolgreich empfangenen Segmente.

Weiterleitungsbestätigung (FACK)

Diese Funktionalität vermeidet TCP-Überlastung, indem explizit die Gesamtzahl der im Netzwerk ausstehenden Datenbytes gemessen wird und der Absender (entweder ein Citrix ADC oder ein Client) dabei unterstützt, die Menge der Daten zu kontrollieren, die während der Zeitüberschreitung in das Netzwerk injiziert werden.

TCP-Verbindungs-Multiplexing

Diese Funktion ermöglicht die Wiederverwendung vorhandener TCP-Verbindungen. Die Citrix ADC Appliance speichert etablierte TCP-Verbindungen zum Wiederverwendungspool. Wenn eine Clientanforderung empfangen wird, sucht die Appliance im Wiederverwendungspool nach einer verfügbaren Verbindung und dient dem neuen Client, wenn die Verbindung verfügbar ist. Wenn sie nicht verfügbar ist, erstellt die Appliance eine neue Verbindung für die Clientanforderung und speichert die Verbindung zum Wiederverwendungspool. Citrix ADC unterstützt Verbindungsmultiplexing für HTTP-, SSL- und DataStream Verbindungstypen.

Dynamische Empfangspufferung

Dadurch kann der Empfangspuffer dynamisch basierend auf Speicher- und Netzwerkbedingungen angepasst werden.

MPTCP-Verbindung

MPTCP-Verbindungen zwischen Client und Citrix ADC. MPTCP-Verbindungen werden zwischen Citrix ADC und dem Backend-Server nicht unterstützt. Die Citrix ADC Implementierung von MPTCP ist RFC 6824-konform.

Sie können über die Befehlszeilenschnittstelle MPTCP-Statistiken wie aktive MPTCP-Verbindungen und aktive Subflow-Verbindungen anzeigen.

Geben Sie an der Eingabeaufforderung einen der folgenden Befehle ein, um eine Zusammenfassung oder detaillierte Zusammenfassung der MPTCP-Statistiken anzuzeigen oder die Statistikanzeige zu löschen:

  1. Stat MPTCP

  2. Stat mptcp —detail

  3. Clearstats basic

Hinweis:

Um eine MPTCP-Verbindung herzustellen, müssen sowohl der Client als auch die Citrix ADC Appliance dieselbe MPTCP-Version unterstützen. Wenn Sie die Citrix ADC Appliance als MTCP-Gateway für Ihre Server verwenden, müssen die Server MPTCP nicht unterstützen. Wenn der Client eine neue MPTCP-Verbindung startet, identifiziert die Appliance die MPTPC-Version des Clients über die Option MP_CAPABALE im SYN-Paket. Wenn die Client-Version höher ist als die von der Appliance unterstützte, gibt die Appliance ihre höchste Version in der Option MP_CAPABALE des SYN-ACK-Pakets an. Der Client greift dann auf eine niedrigere Version zurück und sendet die Versionsnummer in der Option MP_CAPABALE des ACK-Pakets. Wenn diese Version unterstützt wird, setzt die Appliance die MPTCP-Verbindung fort. Andernfalls greift die Appliance auf einen normalen TCP zurück. Die Citrix ADC Appliance initiiert keine Subflows (MP_JOINs). Die Appliance erwartet, dass der Client Subflows initiiert.

Extrahieren der TCP/IP-Pfadüberlagerungsoption und Einfügen des HTTP-Headers von Client-IP

Extrahieren von TCP/IP-Pfadüberlagerung und Einfügen von HTTP-Header von Client-IP. Der Datentransport über Overlay-Netzwerke verwendet häufig Verbindungsabbruch oder Network Address Translation (NAT), bei der die IP-Adresse des Quellclients verloren geht. Um dies zu vermeiden, extrahiert die Citrix ADC Appliance die TCP/IP-Pfadüberlagerungsoption und fügt die IP-Adresse des Quellclients in den HTTP-Header ein. Mit der IP-Adresse im Header kann der Webserver den Quellclient identifizieren, der die Verbindung hergestellt hat. Die extrahierten Daten sind für die Lebensdauer der TCP-Verbindung gültig. Dadurch wird verhindert, dass der nächste Hop Host die Option erneut interpretieren muss. Diese Option ist nur für Webdienste anwendbar, für die die Einfügeoption Client-IP aktiviert ist. Weitere Informationen finden Sie unter Clienteinfügung zum Backendthema.

TCP-Segmentierungsabladung

MSS lernen, um MSS Learning für alle virtuellen Server zu aktivieren, die auf der Appliance konfiguriert sind

Unterstützbare TCP-Parameter

Die folgende Tabelle enthält eine Liste der TCP-Parameter und deren Standardwert, der auf einer Citrix ADC Appliance konfiguriert ist.

Parameter Standardwert Beschreibung
Fensterverwaltung    
TCP verzögerter ACK Timer 100 Millisec Timeout für TCP-verzögerte ACK in Millisekunden.
TCP minimale Restransmission Timeout (RTO) in Millisec 1000 Millisec Minimale Zeitüberschreitung für die erneute Übertragung in Millisekunden, angegeben in 10-Millisekunden-Schritten (Wert muss eine ganze Zahl ergeben, wenn sie durch 10 geteilt wird)
Leerlaufzeit der Verbindung vor dem Start von Keep-Alive-Sonden 900 Sekunden Löschen von TCP-etablierten Verbindungen im Leerlauftimeoutcp etablierten Verbindungen im Leerlaufzeitlimit
TCP-Zeitstempeloption AKTIVIERT Die Zeitstempeloption ermöglicht eine genaue RTT-Messung. Aktivieren oder Deaktivieren der TCP-Zeitstempeloption.
Multipath-TCP-Sitzungszeitüberschreitung 0 Sekunden Zeitüberschreitung für die MPTCP Sitzung in Sekunden. Wenn dieser Wert nicht gesetzt ist, Leerlauf. MPTCP-Sitzungen werden nach dem Timeout des Clients im Leerlauf von vserver geleert.
Stillschweigendes Löschen von Halbgeschlossenen Verbindungen bei Leerlaufzeitüberschreitung 0 Sekunden Stillschweigen Sie TCP-halb-geschlossene Verbindungen bei Leerlaufzeitüberschreitung.
Festgelegte Verbindungen im Leerlauf-Timeout löschen DEAKTIVIERT Löschen von TCP-aufgebauten Verbindungen im Leerlaufzeitlimit
Speicherverwaltung    
TCP-Puffergröße 131072 Bytes TCP-Puffergröße ist die Empfangspuffergröße auf Citrix ADC. Diese Puffergröße wird Clients und Servern von Citrix ADC angekündigt und steuert deren Fähigkeit, Daten an Citrix ADC zu senden. Die Standardpuffergröße beträgt 8K und in den meisten Fällen ist es sicher, diese zu erhöhen, wenn Sie mit internen Serverfarmen sprechen. Die Puffergröße wirkt sich auch auf die eigentliche Anwendungsschicht in Citrix ADC aus, wie bei SSL-Endpunktfällen, die auf 40K und für die Komprimierung auf 96K festgelegt ist. Hinweis: Das Argument Puffergröße muss gesetzt werden, damit dynamische Anpassungen vorgenommen werden können.
TCP-Sendepuffergröße 8190 Byte TCP-Sendepuffergröße
Dynamische TCP-Empfangspufferung DEAKTIVIERT Aktivieren oder deaktivieren Sie die dynamische Empfangspufferung. Wenn diese Option aktiviert ist, kann der Empfangspuffer dynamisch basierend auf Speicher- und Netzwerkbedingungen angepasst werden. Hinweis: Das Argument Puffergröße muss gesetzt werden, damit dynamische Anpassungen vorgenommen werden können.
TCP-Maximalüberlastungsfenster (CWND) 524288 Bytes TCP-Maximalüberlastungsfenster
Fensterskalierungsstatus ENALBED Aktivieren oder deaktivieren Sie die Fensterskalierung.
Fensterskalierungsfaktor 8 Faktor verwendet, um die neue Fenstergröße zu berechnen. Dieses Argument wird nur benötigt, wenn die Fensterskalierung aktiviert ist.
Verbindungseinrichtung    
Keep-alive Sonden DEAKTIVIERT Senden Sie periodische TCP-Keep-Alive-Prüfpunkte (KA), um zu überprüfen, ob Peer noch aktiv ist.
Leerlaufzeit der Verbindung vor dem Start von Keep-Alive-Sonden 900 Sekunden Dauer (in Sekunden), bis die Verbindung im Leerlauf ist, bevor ein Keep-Alive-Prüfpunkt (KA) gesendet wird.
Keep-alive Sondenintervall 75 Sekunden Zeitintervall (in Sekunden) vor der nächsten Keep-Alive-Probe (KA), wenn der Peer nicht reagiert.
Maximale Keep-Alive-Sonden, die vor dem Absetzen der Verbindung fehlen müssen. 3 Anzahl der Keep-Alive-Prüfpunkte (KA), die gesendet werden sollen, wenn sie nicht bestätigt werden, bevor sie angenommen werden, dass der Peer heruntergefahren ist.
RST Window Attenuation (Spoofschutz). DEAKTIVIERT Aktivieren oder deaktivieren Sie RST-Fensterdämpfung, um vor Spoofing zu schützen. Wenn diese Option aktiviert ist, wird mit korrigierenden ACK antworten, wenn eine Sequenznummer ungültig ist.
Akzeptieren Sie RST mit der letzten quittierten Sequenznummer. AKTIVIERT  
Datenübertragung    
Sofortige ACK auf PUSH Paket AKTIVIERT Senden Sie sofort positive Bestätigung (ACK) nach Erhalt von TCP-Paketen mit PUSH-Flag.
Maximale Pakete pro MSS 0 Maximale Anzahl der zulässigen Oktette in einem TCP-Datensegment
Nagle-Algorithmus DEAKTIVIERT Nagle’s Algorithm kämpft mit dem Problem kleiner Pakete in TCP-Übertragung. Anwendungen wie Telnet und andere Echtzeit-Engines, bei denen jeder Tastenhub auf die andere Seite übergeben werden muss, erzeugen oft sehr kleine Pakete. Mit Nagle’s Algorithmus kann Citrix ADC solche kleinen Pakete puffern und sendet sie zusammen, um die Verbindungseffizienz zu erhöhen. Dieser Algorithmus muss mit anderen TCP-Optimierungstechniken in Citrix ADC zusammenarbeiten.
Maximale zulässige TCP-Segmente in einem Burst 10 MSS Maximale Anzahl zulässiger TCP-Segmente in einem Burst
Maximale Anzahl an nicht bestellbaren Paketen in die Warteschlange 300 Maximale Größe der Warteschlange für nicht bestellbare Pakete. Ein Wert von 0 bedeutet keine Begrenzung
Staukontrolle    
TCP-Variante CUBIC  
Anfängliche Einstellung für congestion window(cwnd) 4 MSS Anfangsmaximale Obergrenze für die Anzahl der TCP-Pakete, die auf der TCP-Verbindung zum Server ausstehen können
TCP Explicit Congestion Notification(ECN) DISABLED Explizite Congestion Notification (ECN) bietet End-to-End-Benachrichtigung über Netzwerküberlastung, ohne Pakete zu löschen.
TCP Max congestion window(CWND) 524288 Bytes TCP verwaltet ein Congestion Window (CWND), das die Gesamtzahl der nicht bestätigten Pakete begrenzt, die sich im Transit End-to-End befinden. In TCP ist das Staufenster einer der Faktoren, die die Anzahl der Bytes bestimmt, die jederzeit ausstehen können. Das Staus Fenster ist ein Mittel, um eine Verbindung zwischen dem Sender und dem Empfänger davon abzuhalten, mit zu viel Datenverkehr überlastet zu werden. Es wird berechnet, indem geschätzt wird, wie viel Staus auf der Verbindung vorhanden ist.
TCP Hybrid Start (HYSTART) 8 Byte  
TCP minimale Restransmission Timeout (RTO) in Millisec 1000 Minimale Zeitüberschreitung für die erneute Übertragung in Millisekunden, angegeben in Schritten von 10 Millisekunden (Wert muss eine ganze Zahl ergeben, wenn sie durch 10 geteilt wird).
TCP dupack threshold DISABLED  
Burstratensteuerung 3 TCP Burst Rate Control DISABLED/FIXED/DYNAMIC. FIXED erfordert, dass eine TCP-Rate festgelegt wird
TCP-Rate DEAKTIVIERT Übertragungsrate der TCP-Verbindung in KB/s
Maximale TCP-Queue 0 Maximale Verbindungswarteschlangengröße in Byte, wenn BurstRateControl verwendet wird.
MPTCP    
Multipfad-TCP DEAKTIVIERT Multipath TCP (MPTCP) ist ein Satz von Erweiterungen für reguläre TCP, um einen Multipath TCP-Dienst bereitzustellen, der es einer Transportverbindung ermöglicht, über mehrere Pfade gleichzeitig zu arbeiten.
Multipath-TCP-Daten im vordefinierten Subflow ablegen DEAKTIVIERT Aktivieren oder deaktivieren Sie das Löschen der Daten im vordefinierten Unterfluss. Wenn diese Option aktiviert ist, werden DSS-Datenpakete automatisch gelöscht, anstatt die Verbindung zu löschen, wenn Daten im vorab festgelegten Unterfluss empfangen werden.
Multipath TCP Fastopen DEAKTIVIERT Aktivieren oder deaktivieren Sie Multipath TCP fastopen. Wenn diese Option aktiviert ist, werden DSS-Datenpakete akzeptiert, bevor die dritte ACK des SYN-Handshake empfangen wird.
Multipath-TCP-Sitzungszeitüberschreitung 0 Sekunden Zeitüberschreitung für die MPTCP Sitzung in Sekunden. Wenn dieser Wert nicht festgelegt ist, werden Leerlauf-MPTCP-Sitzungen nach dem Timeout des Clients im Leerlauf von vserver geleert.
Sicherheit    
SYN Spoofschutz DEAKTIVIERT Aktivieren oder deaktivieren Sie das Löschen ungültiger SYN-Pakete zum Schutz vor Spoofing. Wenn diese Option deaktiviert ist, werden die etablierten Verbindungen zurückgesetzt, wenn ein SYN-Paket empfangen wird.
TCP Syncookie DEAKTIVIERT Dies wird verwendet, um SYN-Überschwemmungen zu widerstehen. Aktivieren oder deaktivieren Sie den SYNCOOKIE Mechanismus für TCP-Handshake mit Clients. Das Deaktivieren von SYNCOOKIE verhindert den SYN-Angriffsschutz auf der Citrix ADC Appliance.
Verlusterkennung und -wiederherstellung    
Doppelte selektive Bestätigung (DSACK) AKTIVIERT Eine Citrix ADC Appliance verwendet DSACK (Duplicate Selective Anowledgement), um festzustellen, ob eine erneute Übertragung fehlerhaft gesendet wurde.
Forward RTO Recovery (FRTO) AKTIVIERT Erkennt unwahrscheinliche TCP-Neuübertragungs-Timeouts. Nach der erneuten Übertragung des ersten nicht bestätigten Segments, das durch ein Timeout ausgelöst wurde, überwacht der Algorithmus des TCP-Absenders die eingehenden Bestätigungen, um festzustellen, ob das Timeout nicht getäuscht war. Anschließend entscheidet er, ob neue Segmente gesendet oder nicht bestätigte Segmente erneut übertragen werden sollen. Der Algorithmus hilft effektiv, zusätzliche unnötige Neuübertragungen zu vermeiden und verbessert dadurch die TCP-Leistung im Falle eines unangenehmen Timeouts.
TCP-Weiterleitungsbestätigung (FACK) AKTIVIERT Aktivieren oder deaktivieren Sie FACK (Forward ACK).
Status der selektiven Bestätigung (SACK) AKTIVIERT TCP SACK löst das Problem des Mehrfachpaketverlustes, wodurch die Gesamtdurchsatzkapazität reduziert wird. Mit selektiver Quittierung kann der Empfänger den Absender über alle erfolgreich empfangenen Segmente informieren, sodass der Absender nur die verlorenen Segmente weiterleiten kann. Diese Technik hilft Citrix ADC, den Gesamtdurchsatz zu verbessern und die Verbindungslatenz zu reduzieren.
Maximale Pakete pro Weiterleitung 1 Ermöglicht Citrix ADC, zu steuern, wie viele Pakete in einem Versuch erneut übertragen werden sollen. Wenn Citrix ADC eine partielle ACK erhält und eine erneute Übertragung vornehmen muss, wird diese Einstellung berücksichtigt. Dies hat keine Auswirkungen auf die RTO basierten Wiederübertragungen.
TCP verzögerter ACK Timer 100 Millisec Timeout für TCP-verzögerte ACK, in Millisekunden
TCO-Optimierung    
TCP-Optimierungsmodus TRANSPARENT TCP-Optimierungsmodi TRANSPARENT/ENDPOINT
Adaptive TCP-Optimierungen anwenden DEAKTIVIERT Adaptive TCP-Optimierungen anwenden
TCP-Segmentierungsabladung AUTOMATIC Verlagern Sie die TCP-Segmentierung auf die Netzwerkkarte. Wenn diese Option auf AUTOMATIC eingestellt ist, wird die TCP-Segmentierung auf die Netzwerkkarte ausgelagert, wenn sie von der Netzwerkkarte unterstützt wird.
ACK-Aggregation DEAKTIVIERT ACK-Aggregation aktivieren oder deaktivieren
TCP Time-wait(or Time_wait) 40 Sekunden Verstrichene Zeit vor dem Freigeben einer geschlossenen TCP-Verbindung

Globale TCP-Parameter festlegen

Mit der Citrix ADC Appliance können Sie Werte für TCP-Parameter angeben, die für alle Citrix ADC Dienste und virtuelle Server gelten. Dies kann getan werden mit:

  • Standard-TCP-Profil
  • Globale TCP-Befehl
  • TCP-Pufferungsfunktion

Hinweis:

Der Parameter RecvBuffSize des Befehls set ns TcpParam ist ab Release 9.2 veraltet. Legen Sie in späteren Versionen die Puffergröße mithilfe des Parameters BufferSize des Befehls set ns TcpProfile fest. Wenn Sie auf eine Version aktualisieren, in der der Parameter RecvBuffSize veraltet ist, wird der Parameter BufferSize auf den Standardwert festgelegt.

Standard-TCP-Profil

Ein TCP-Profil mit dem Namen nstcp_default_profile wird verwendet, um TCP-Konfigurationen anzugeben, die verwendet werden, wenn auf Dienst- oder virtueller Serverebene keine TCP-Konfigurationen bereitgestellt werden.

Hinweise:

  • Nicht alle TCP-Parameter können über das standardmäßige TCP-Profil konfiguriert werden. Einige Einstellungen müssen mit dem globalen TCP-Befehl durchgeführt werden (siehe Abschnitt unten).

  • Das Standardprofil muss nicht explizit an einen Dienst oder einen virtuellen Server gebunden werden.

So konfigurieren Sie das standardmäßige TCP-Profil

  • Geben Sie über die Befehlszeilenschnittstelle an der Eingabeaufforderung Folgendes ein:

    set ns tcpProfile nstcp_default_profile …

  • Navigieren Sie auf der Benutzeroberfläche zu System > Profile, klicken Sie auf TCP-Profile und aktualisieren Sie nstcp_default_profile.

Globale TCP-Befehl

Ein weiterer Ansatz, mit dem Sie globale TCP-Parameter konfigurieren können, ist der globale TCP-Befehl. Zusätzlich zu einigen eindeutigen Parametern dupliziert dieser Befehl einige Parameter, die mithilfe eines TCP-Profils festgelegt werden können. Jede Aktualisierung dieser doppelten Parameter wird im entsprechenden Parameter im Standard-TCP-Profil wiedergegeben.

Wenn beispielsweise der Parameter SACK mit diesem Ansatz aktualisiert wird, wird der Wert im Parameter SACK des Standard-TCP-Profils (nstcp_default_profile) widergespiegelt.

Hinweis:

Citrix empfiehlt, diesen Ansatz nur für TCP-Parameter zu verwenden, die im Standard-TCP-Profil nicht verfügbar sind.

So konfigurieren Sie den globalen TCP-Befehl

  • Geben Sie über die Befehlszeilenschnittstelle an der Eingabeaufforderung Folgendes ein:

    set ns tcpParam …

  • Navigieren Sie auf der Benutzeroberfläche zu System > Einstellungen, klicken Sie auf TCP-Parameter ändern und aktualisieren Sie die erforderlichen TCP-Parameter.

TCP-Pufferungsfunktion

Citrix ADC bietet eine Funktion namens TCP-Pufferung, mit der Sie die Größe des TCP-Puffers angeben können. Die Funktion kann global oder auf Service-Ebene aktiviert werden.

Hinweis Die Puffergröße kann auch im Standard-TCP-Profil konfiguriert werden. Wenn die Puffergröße in der TCP-Pufferungsfunktion und im Standard-TCP-Profil unterschiedliche Werte aufweist, wird der größere Wert angewendet.

So konfigurieren Sie die TCP-Pufferungsfunktion global

  • Geben Sie an der Eingabeaufforderung Folgendes ein:

    Aktivieren des NS-Modus TCPB

    set ns tcpbufParam -size <positiveInteger> -memLimit <positiveInteger>

  • Navigieren Sie auf der Benutzeroberfläche zu System > Einstellungen, klicken Sie auf Modi konfigurieren und wählen Sie TCP-Pufferung aus.

    Navigieren Sie zu System > Einstellungen, klicken Sie auf TCP-Parameter ändern und geben Sie die Werte für Puffergröße und Speicherauslastung an.

Festlegen von Dienst- oder Virtual Server-spezifischen TCP-Parametern

Mit TCP-Profilen können Sie TCP-Parameter für Dienste und virtuelle Server angeben. Sie müssen ein TCP-Profil definieren (oder ein integriertes TCP-Profil verwenden) und das Profil dem entsprechenden Dienst und dem virtuellen Server zuordnen.

Hinweis:

Sie können auch die TCP-Parameter von Standardprofilen entsprechend Ihren Anforderungen ändern.

Sie können die Größe des TCP-Puffers auf Dienstebene mit den Parametern angeben, die durch das Feature TCP-Pufferung angegeben werden.

So geben Sie TCP-Konfigurationen auf Dienst- oder virtueller Serverebene mit der Befehlszeilenschnittstelle an

Führen Sie an der Eingabeaufforderung Folgendes aus:

  1. Konfigurieren Sie das TCP-Profil.

    set ns tcpProfile <profile-name>...

  2. Binden Sie das TCP-Profil an den Dienst oder den virtuellen Server.

set service <name> ....

**Beispiel**:

`> set service service1 -tcpProfileName profile1`

So binden Sie das TCP-Profil an den virtuellen Server:

<name>`lb vserver setzen ... `

**Beispiel**:

`> set lb vserver lbvserver1 -tcpProfileName profile1`

So geben Sie TCP-Konfigurationen auf Dienst- oder virtueller Serverebene mit der GUI an

Führen Sie an der grafischen Benutzeroberfläche Folgendes aus:

  1. Konfigurieren Sie das TCP-Profil.

    Navigieren Sie zu System > Profile > TCP-Profile, und erstellen Sie das TCP-Profil.

  2. Binden Sie das TCP-Profil an den Dienst oder den virtuellen Server.

    Navigieren Sie zu Traffic Management > Load Balancing > Services/Virtuelle Server, und erstellen Sie das TCP-Profil, das an den Dienst oder den virtuellen Server gebunden sein soll.

Integrierte TCP-Profile

Zur einfacheren Konfiguration bietet Citrix ADC einige integrierte TCP-Profile. Überprüfen Sie die unten aufgeführten integrierten Profile, wählen Sie ein Profil aus und verwenden Sie es so, wie es ist, oder ändern Sie es entsprechend Ihren Anforderungen. Sie können diese Profile an Ihre erforderlichen Dienste oder virtuelle Server binden.

Eingebautes Profil Beschreibung
nstcp_default_profile Stellt die globalen Standardeinstellungen für TCP auf der Appliance dar.
nstcp_default_tcp_lan Nützlich für Back-End-Serververbindungen, bei denen sich diese Server im selben LAN wie die Appliance befinden.
nstcp_default_tcp_lan_thin_stream Ähnlich wie das Profil nstcp_default_tcp_lan; die Einstellungen werden jedoch auf Paketflüsse kleiner Größe abgestimmt.
nstcp_default_tcp_interactive_stream Ähnlich wie beim nstcp_default_tcp_lan Profil; es hat jedoch einen reduzierten verzögerten ACK-Timer und ACK auf PUSH Paketeinstellungen.
nstcp_default_tcp_lfp Nützlich für Long Fat Pipe Networks (WAN) auf der Client-Seite. Lange Fat-Pipe-Netzwerke haben lange Verzögerungen, hohe Bandbreite mit minimalen Paketabfällen.
nstcp_default_tcp_lfp_thin_stream Ähnlich wie das Profil nstcp_default_tcp_lfp; die Einstellungen sind jedoch auf Paketflüsse kleiner Größe abgestimmt.
nstcp_default_tcp_lnp Nützlich für lange schmale Rohrnetze (WAN) auf der Client-Seite. Lange schmale Rohrnetze haben ab und zu erhebliche Paketverluste.
nstcp_default_tcp_lnp_thin_stream Ähnlich wie beim nstcp_default_tcp_lnp-Profil; die Einstellungen sind jedoch auf Paketflüsse kleiner Größe abgestimmt.
nstcp_internal_apps Nützlich für interne Anwendungen auf der Appliance (z. B. GSLB Sitesyncing). Diese enthält abgestimmte Fensterskalierung und SACK-Optionen für die gewünschten Anwendungen. Dieses Profil sollte nicht an andere Anwendungen als interne Anwendungen gebunden sein.
nstcp_default_Mobile_profile Nützlich für mobile Geräte.
nstcp_default_XA_XD_profile Nützlich für eine XenApp - oder XenDesktop Bereitstellung.

Beispiel-TCP-Konfigurationen

Beispielbeispiele für die Befehlszeilenschnittstelle für die Konfiguration der folgenden Elemente:

Verteidigung von TCP gegen Spoofing-Angriffe

Aktivieren Sie Citrix ADC, TCP gegen Spoofangriffe zu schützen. Standardmäßig ist der Parameter “RstWindowAttenuation” deaktiviert. Dieser Parameter ist aktiviert, um die Appliance vor Spoofing zu schützen. Wenn Sie es aktivieren, wird es mit Korrekturbestätigung (ACK) auf eine ungültige Sequenznummer antworten. Mögliche Werte sind Aktiviert, Deaktiviert.

Wo RST Fenster dämpfen Parameter schützt die Appliance vor Spoofing. Wenn diese Option aktiviert ist, wird mit korrigierenden ACK antworten, wenn eine Sequenznummer ungültig ist.

```
> set ns tcpProfile profile1 -rstWindowAttenuate ENABLED -spoofSynDrop ENABLED
Done
> set lb vserver lbvserver1 -tcpProfileName profile1
Done
```

Explicit Congestion Notification (ECN)

Enable ECN on the required TCP profile

```
> set ns tcpProfile profile1 -ECN ENABLED
Done
> set lb vserver lbvserver1 -tcpProfileName profile1
Done
```

Selektive Bestätigung (SACK)

Aktivieren Sie SACK für das erforderliche TCP-Profil.

```
> set ns tcpProfile profile1 -SACK ENABLED
Done
> set lb vserver lbvserver1 -tcpProfileName profile1
Done
```

Weiterleitungsbestätigung (FACK)

Aktivieren Sie FACK für das erforderliche TCP-Profil.

> set ns tcpProfile profile1 -FACK ENABLED > set lb vserver lbvserver1 -tcpProfileName profile1

Fensterskalierung (WS)

Aktivieren Sie die Fensterskalierung und legen Sie den Fensterskalierungsfaktor für das erforderliche TCP-Profil fest.

set ns tcpProfile profile1 –WS ENABLED –WSVal 9 Done set lb vserver lbvserver1 -tcpProfileName profile1 Done

Maximale Segmentgröße (MSS)

Aktualisieren Sie die MSS-bezogenen Konfigurationen.

> set ns tcpProfile profile1 –mss 1460 - maxPktPerMss 512 Done > set lb vserver lbvserver1 -tcpProfileName profile1 Done

Citrix ADC zum Lernen des MSS eines virtuellen Servers

Aktivieren Sie Citrix ADC, um den VSS zu erfahren und andere zugehörige Konfigurationen zu aktualisieren.

> set ns tcpParam -learnVsvrMSS ENABLED –mssLearnInterval 180 -mssLearnDelay 3600 Done

TCP-Keep-Alive

Aktivieren Sie TCP-Keep-Alive und aktualisieren Sie andere zugehörige Konfigurationen.

> set ns tcpProfile profile1 –KA ENABLED –KaprobeUpdateLastactivity ENABLED -KAconnIdleTime 900 -KAmaxProbes 3 -KaprobeInterval 75 Done > set lb vserver lbvserver1 -tcpProfileName profile1 Done

Puffergröße - mit TCP-Profil

Geben Sie die Puffergröße an.

> set ns tcpProfile profile1 –bufferSize 8190 Done > set lb vserver lbvserver1 -tcpProfileName profile1 Done

Puffergröße - Verwenden der TCP-Pufferungsfunktion

Aktivieren Sie die TCP-Pufferungsfunktion (global oder für einen Dienst) und geben Sie dann die Puffergröße und das Speicherlimit an.

> enable ns feature TCPB Done > set ns tcpbufParam -size 64 -memLimit 64 Done

MPTCP

Aktivieren Sie MPTCP, und legen Sie dann die optionalen MPTCP-Konfigurationen fest.

> set ns tcpProfile profile1 -mptcp ENABLED Done > set ns tcpProfile profile1 -mptcpDropDataOnPreEstSF ENABLED -mptcpFastOpen ENABLED -mptcpSessionTimeout 7200 Done > set ns tcpparam -mptcpConCloseOnPassiveSF ENABLED -mptcpChecksum ENABLED -mptcpSFtimeout 0 -mptcpSFReplaceTimeout 10 -mptcpMaxSF 4 -mptcpMaxPendingSF 4 -mptcpPendingJoinThreshold 0 -mptcpRTOsToSwitchSF 2 -mptcpUseBackupOnDSS ENABLED Done

Staukontrolle

Legen Sie den erforderlichen TCP-Staukontrollalgorithmus fest.

set ns tcpProfile profile1 -flavor Westwood Done > set lb vserver lbvserver1 -tcpProfileName profile1 Done

Dynamische Empfangspufferung

Aktivieren Sie die dynamische Empfangspufferung für das erforderliche TCP-Profil.

> set ns tcpProfile profile1 -dynamicReceiveBuffering ENABLED Done > set lb vserver lbvserver1 -tcpProfileName profile1 Done

Unterstützung für TCP Fast Open (TFO) in Multipath TCP (MPTCP)

Eine Citrix ADC Appliance unterstützt jetzt TCP Fast Open (TFO)-Mechanismus zum Herstellen von Multipath TCP (MPTCP)-Verbindungen und zur Beschleunigung der Datenübertragung. Der Mechanismus ermöglicht die Übertragung von Subflow-Daten während des anfänglichen MPTCP-Verbindungshandshake in SYN- und SYN-ACK-Paketen und ermöglicht auch die Verwendung von Daten durch den empfangenden Knoten während des Verbindungsaufbaus der MPTCP-Verbindung.

Weitere Informationen finden Sie unter TCP Schnelles Öffnen.

Unterstützung für variable TFO-Cookiegröße für MPTCP

Mit einer Citrix ADC Appliance können Sie nun ein TCP-Fast Open (TFO) Cookie mit variabler Länge mit einer Mindestgröße von 4 Bytes und einer maximalen Größe von 16 Bytes in einem TCP-Profil konfigurieren. Auf diese Weise kann die Appliance mit der konfigurierten TFO-Cookie-Größe im SYN-ACK-Paket auf den Client reagieren.

So konfigurieren Sie TCP Fast Open (TFO) Cookie in einem TCP-Profil mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

set tcpProfile nstcp_default_profile -tcpFastOpenCookieSize <positive_integer>

Beispiel

set tcpProfile nstcp_default_profile -tcpFastOpenCookieSize 8

So konfigurieren Sie TCP Fast Open (TFO) Cookie in einem TCP-Profil mithilfe von GUI

  1. Navigieren Sie zu Konfiguration > System > Profile.
  2. Wechseln Sie im Detailbereich zur Registerkarte TCP-Profile und wählen Sie ein TCP-Profil aus.
  3. Legen Sie auf der Seite TCP-Profil konfigurieren die Cookie-Größe von TCP Fast Open fest.
  4. Klicken Sie auf OK und Fertig .

In einer Citrix ADC Appliance ist der SYN-Cookie-Parameter im TCP-Profil standardmäßig aktiviert, um SYN-Angriffe zu widerstehen. Wenn Sie es vorziehen, einen Angriff für einen virtuellen Server zu erkennen und die SYN-ACK-Weiterübertragungsrate zu überprüfen, wird der SYN-Cookie-Wert von Aktiviert in den Status Deaktiviert umgeschaltet. Der Umschaltungseffekt des Cookies vom Status Aktiviert in Deaktiviert und umgekehrt verursacht eine Konfigurationsinkonsistenz zwischen Knoten in einer Clusterbereitstellung. Um dies zu vermeiden, können Sie den zweiten SYN-Cookie-Parameter verwenden, der auf jedem virtuellen Server der Appliance verwaltet wird. Wenn ein SYN-Angriff erkannt wird, wird das SYN-Cookie im TCP-Profil deaktiviert und der zweite SYN-Cookie-Wert auf dem Server wird von Deaktiviert in den Status Aktiviert umgeschaltet. Das Cookie bleibt im Status Aktiviert für ein autosyncookietimeout-Intervall, das Sie angeben können. Während des Zeitüberschreitungsintervalls bekämpft der virtuelle Server den SYN-Angriff im SYN-Cookie-Modus. Nachdem das Intervall abgelaufen ist, wird der SYN-Cookie-Wert wieder in den Status Deaktiviert umgeschaltet, wenn die SYN-ACK-Weiterübertragungsrate des virtuellen Servers unter dem Schwellenwert liegt. Andernfalls, wenn die Rate noch über dem Schwellenwert liegt, bedeutet dies, dass es sich um einen SYN-Angriff handelt und das Cookie erneut in den Status Aktiviert für den angegebenen Zeitüberschreitungszeitraum umgeschaltet wird.

So konfigurieren Sie den maximalen SYN ACK-Neuübertragungsschwellenwert mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

``` set ns tcpparam \[-maxSynAckRetx <positive_integer>\]

Set ns tcpparam [-maxSynAckRetx 150] ```

So konfigurieren Sie das automatische SYN-Cookie-Zeitüberschreitungsintervall mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

set ns tcpparam [-autosyncookietimeout <positive_integer>]

``` Set ns tcpparam [-autosyncookietimeout 90]
\`\`\`