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.

Jumbo UC2

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 198.51.100.20
SNIP-Adresse auf NS1   198.51.100.18
MTU für Schnittstellen und VLANs auf NS1 angegeben 10/1 1500
  10/2 9000
  VLAN 10 1500
  VLAN 20 9000
Standard-TCP-Profil nstcp_default_profile MSS:1460
Benutzerdefiniertes TCP-Profil NS1-SERVERS-JUMBO MS: 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 IP-Adresse: 198.51.100.20, Protokoll: HTTP, Port: 80, TCP-Profil: NS1-SERVERS-JUMBO (MSS: 8960)
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:

  1. Client CL1 erstellt eine 200-Byte-HTTP-Anforderung zum Senden an den virtuellen Server LBVS-1 von NS1.

  2. CL1 öffnet eine Verbindung zu LBVS-1 von NS1. CL1 und NS1 tauschen beim Herstellen der Verbindung ihre jeweiligen TCP-MSS-Werte aus.

  3. 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

  4. NS1 empfängt das Anforderungspaket an der Schnittstelle 10/1 und verarbeitet dann die HTTP-Anforderungsdaten im Paket.

  5. 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.

  6. 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-Anfrage]=[20 + 20 + 200]= 240

Es folgt der Verkehrsfluss von S1 Antwort auf CL1 in diesem Beispiel:

  1. Server S1 erstellt eine 18000-Byte-HTTP-Antwort, die an die SNIP-Adresse von NS1 gesendet wird.
  2. 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=NS1-MSS-Größe)]=[20 + 20 + 8960]= 9000
    • Größe des letzten Pakets =[IP-Header + TCP-Header + (verbleibendes TCP-Segment)]=[20 + 20 + 2080]= 2120
  3. NS1 empfängt die Antwortpakete an Schnittstelle 10/2.
  4. Aus diesen IP-Paketen baut NS1 alle TCP-Segmente zusammen, um die HTTP-Antwortdaten von 18000 Byte zu bilden. NS1 verarbeitet diese Antwort.
  5. 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 außer dem letzten =[IP-Header + TCP-Header + (TCP PayLoad=CL1 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 <id> -mtu <positive_integer>, show interface <id> 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 <id> -mtu <positive_integer>, show vlan <id> add vlan 10 -mtu 1500 add vlan 20 -mtu 9000
Schnittstellen an VLANs binden bind vlan <id> -ifnum <interface_name>, show vlan <id> bind vlan 10 -ifnum 10/1 bind vlan 20 -ifnum 10/2
Hinzufügen einer SNIP-Adresse add ns ip <IPAddress> <netmask> -type SNIP, show ns ip add ns ip 198.51.100.18 255.255.255.0 -type SNIP
Erstellen von Diensten, die HTTP-Server darstellen add service <serviceName> <ip> HTTP <port>, show service <name> 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 <name> HTTP <ip> <port>, bind lb vserver <vserverName> <serviceName>, show lb vserver <name> 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 <name> -mss <positive_integer>, show tcpProfile <name> add tcpprofile NS1-SERVERS-JUMBO -mss 8960
Binden Sie das benutzerdefinierte TCP-Profil an die gewünschten Dienste set service <Name> -tcpProfileName <string>, show service <name> 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  

Anwendungsfall 2 — Nicht-Jumbo-zu-Jumbo-Setup