Anwendungsfall 2 — Nicht-Jumbo-zu-Jumbo-Setup
Betrachten Sie ein Beispiel für ein reguläres Jumbo-Setup, bei dem der Lastenausgleich des virtuellen Servers LBVS-1, der auf einer Citrix ADC Appliance NS1 konfiguriert ist, zum Lastenausgleich zwischen den Servern S1 und S2 verwendet wird. Die Verbindung zwischen Client CL1 und NS1 unterstützt reguläre Frames, und die Verbindung zwischen NS1 und den Servern unterstützt Jumbo-Frames.
Schnittstelle 10/1 von NS1 empfängt oder sendet Datenverkehr vom oder zum Client CL1. Schnittstelle 10/2 von NS1 empfängt oder sendet Datenverkehr vom oder zum Server S1 oder S2.
Die Schnittstellen 10/1 und 10/2 von NS1 sind Teil von VLAN 10 bzw. VLAN 20. Um nur reguläre Frames zwischen CL1 und NS1 zu unterstützen, wird die MTU auf den Standardwert 1500 für Schnittstelle 10/1 und VLAN 10 gesetzt.
Für die Unterstützung von Jumbo-Frames zwischen NS1 und den Servern ist die MTU für die Schnittstelle 10/2 und VLAN 20 auf 9000 eingestellt. Server und alle anderen Netzwerkgeräte zwischen NS1 und den Servern sind ebenfalls für die Unterstützung von Jumbo-Frames konfiguriert.
Da HTTP-Datenverkehr auf TCP basiert, werden MSS an jedem Endpunkt für die Unterstützung von Jumbo-Frames entsprechend festgelegt.
- Zur Unterstützung von Jumbo-Frames für die Verbindung zwischen einer SNIP-Adresse von NS1 und S1 oder S2 wird der MSS auf NS1 entsprechend in einem benutzerdefinierten TCP-Profil festgelegt, das an die Dienste (SVC-S1 und SVC-S1) gebunden ist, die S1 und S2 auf NS1 darstellen.
- Um nur reguläre Frames für die Verbindung zwischen CL1 und dem virtuellen Server LBVS-1 von NS1 zu unterstützen, wird das standardmäßige TCP-Profil nstcp_default_profile verwendet, das standardmäßig an LBVS-1 gebunden ist und der MSS auf den Standardwert 1460 festgelegt ist.
In der folgenden Tabelle sind die in diesem Beispiel verwendeten Einstellungen aufgeführt.
Entität | Name | Details |
---|---|---|
IP-Adresse des Clients CL1 | 192.0.2.10 | |
IP-Adresse der Server | S1 | 198.51.100.19 |
S2 | ||
SNIP-Adresse auf NS1 | 198.51.100.18 | |
MTU für Schnittstellen und VLANs auf NS1 angegeben | 10/1 | 1500 |
10/2 | ||
VLAN 10 | ||
VLAN 20 | ||
Standard-TCP-Profil | nstcp_default_profile | MSS:1460 |
Benutzerdefiniertes TCP-Profil | NS1-SERVERS-JUMBO | MSS: 8960 |
Dienste auf NS1, die Server darstellen | SVC-S1 | IP-Adresse: 198.51.100.19, Protokoll: HTTP, Port: 80, TCP-Profil: NS1-SERVERS-JUMBO (MSS: 8960) |
SVC-S2 | ||
Lastenausgleich virtueller Server auf VLAN 10 | LBVS-1 | IP-Adresse = 203.0.113.15, Protokoll: HTTP, Port:80, Gebundene Dienste: SVC-S1, SVC-S2, TCP-Profil: nstcp_default_profile (MSS: 1460) |
Im Folgenden ist der Datenfluss von CL1 Anforderung an S1 in diesem Beispiel:
-
Client CL1 erstellt eine 200-Byte-HTTP-Anforderung zum Senden an den virtuellen Server LBVS-1 von NS1.
-
CL1 öffnet eine Verbindung zu LBVS-1 von NS1. CL1 und NS1 tauschen beim Herstellen der Verbindung ihre jeweiligen TCP-MSS-Werte aus.
-
Da NS1 MSS größer ist als die HTTP-Anforderung, CL1 sendet die Anforderungsdaten in einem einzigen IP-Paket an NS1.
Größe des Anforderungspakets = [IP-Header + TCP-Header + TCP-Anfrage] = [20 + 20 + 200] = 240
-
NS1 empfängt das Anforderungspaket an der Schnittstelle 10/1 und verarbeitet dann die HTTP-Anforderungsdaten im Paket.
-
Der Lastausgleichsalgorithmus von LBVS-1 wählt Server S1 aus, und NS1 öffnet eine Verbindung zwischen einer seiner SNIP-Adressen und S1. NS1 und CL1 tauschen beim Herstellen der Verbindung ihre jeweiligen TCP-MSS-Werte aus.
-
Da der MSS von S1 größer ist als die HTTP-Anforderung, sendet NS1 die Anforderungsdaten in einem einzigen IP-Paket an S1.
Größe des Anforderungspakets = [IP-Header + TCP-Header + [TCP-Anforderung][20 + 20 + 200] = 240
Es folgt der Verkehrsfluss von S1 Antwort auf CL1 in diesem Beispiel:
- Server S1 erstellt eine 18000-Byte-HTTP-Antwort, die an die SNIP-Adresse von NS1 gesendet wird.
-
S1 segmentiert die Antwortdaten in Vielfaches von NS1 MSS und sendet diese Segmente in IP-Paketen an NS1. Diese IP-Pakete werden von der IP-Adresse von S1 bezogen und an die SNIP-Adresse von NS1 bestimmt.
- Größe der ersten beiden Pakete = [IP-Header + TCP-Header + (TCP-Segment = MSS-Größe von NS1)] = [20 + 20 + 8960] = 9000
- Größe des letzten Pakets = [IP-Header + TCP-Header + (verbleibendes TCP-Segment)] = [20 + 20 + 2080] = 2120
- NS1 empfängt die Antwortpakete an Schnittstelle 10/2.
- Aus diesen IP-Paketen baut NS1 alle TCP-Segmente zusammen, um die HTTP-Antwortdaten von 18000 Byte zu bilden. NS1 verarbeitet diese Antwort.
-
NS1 segmentiert die Antwortdaten in Vielfaches von CL1 MSS und sendet diese Segmente in IP-Paketen, von Schnittstelle 10/1, an CL1. Diese IP-Pakete werden von der IP-Adresse von LBVS-1 bezogen und an die IP-Adresse von CL1 bestimmt.
- Größe aller Pakete mit Ausnahme des letzten = [IP-Header + TCP-Header + (TCP Payload=CL1s MSS-Größe)] = [20 + 20 + 1460] = 1500
- Größe des letzten Pakets = [IP-Header + TCP-Header + (verbleibendes TCP-Segment)] = [20 + 20 + 480] = 520
Konfigurationsaufgaben
In der folgenden Tabelle sind die Tasks, Citrix ADC Befehle und Beispiele für die Erstellung der erforderlichen Konfiguration auf der Citrix ADC-Appliance aufgeführt.
Aufgaben | CLI-Syntax | Beispiele |
---|---|---|
Stellen Sie die MTU der gewünschten Schnittstellen zur Unterstützung von Jumbo-Frames ein | set interface |
set int 10/1 -mtu 1500 set int 10/2 -mtu 9000 |
Erstellen Sie VLANs und legen Sie die MTU der gewünschten VLANs für die Unterstützung von Jumbo-Frames fest | add vlan |
add vlan 10 -mtu 1500 add vlan 20 -mtu 9000 |
Schnittstellen an VLANs binden | bind vlan |
bind vlan 10 -ifnum 10/1 bind vlan 20 -ifnum 10/2 |
Hinzufügen einer SNIP-Adresse | add ns ip |
add ns ip 198.51.100.18 255.255.255.0 -type SNIP |
Erstellen von Diensten, die HTTP-Server darstellen | add service |
add service SVC-S1 198.51.100.19 http 80, add service SVC-S2 198.51.100.20 http 80 |
Erstellen Sie virtuelle HTTP-Lastausgleichsserver und binden Sie die Dienste an sie | add lb vserver |
add lb vserver LBVS-1 http 203.0.113.15 80, bind lb vserver LBVS-1 SVC-S1, bind lb vserver LBVS-1 SVC-S2 |
Erstellen eines benutzerdefinierten TCP-Profils und Festlegen des MSS für die Unterstützung von Jumbo-Frames | add tcpProfile |
add tcpprofile NS1-SERVERS-JUMBO -mss 8960 |
Binden Sie das benutzerdefinierte TCP-Profil an die gewünschten Dienste | set service |
set service SVC-S1 -tcpProfileName NS1-SERVERS-JUMBO, set service SVC-S2 -tcpProfileName NS1-SERVERS-JUMBO |
Speichern der Konfiguration | save ns config, show ns config |