PowerSwitch: FCoE-Sitzungsprobleme aufgrund von LLDP-Paketen, die von der VM oder dem virtuellen Switch gesendet wurden
概要: FCoE-Sitzungsprobleme aufgrund von LLDP-Paketen (Link Layer Discovery Protocol), die von virtuellen Maschinen gesendet werden. Das Problem kann zum Flapping der Schnittstelle führen oder es werden keine Probleme angezeigt, bis eine manuelle Aktion durchgeführt wird, die dazu führt, dass LLDP neu berechnet wird und das Problem auslöst. ...
現象
Betroffene Plattformen: MX- und MXL-Switch, auf denen DCB-Funktionen (Data Center Bridging) ausgeführt werden, aber nicht beschränkt auf/VMware ESXi
Auswirkungen:
- Hostkommunikation zur FCoE-Umgebung verloren
- Die Storage-Kommunikation reagiert nicht mehr oder springt zurück
- In einer stabilen Umgebung kann es zu einem kompletten Ausfall aller FCoE-VLANs kommen, wenn eine manuelle Maßnahme durchgeführt wird, die dazu führt, dass LLDP neu aufgezählt wird. Zum Beispiel das Hinzufügen eines VLAN oder das Deaktivieren von LLDP auf dem vDS.
原因
Dieser Artikel soll zusätzlichen Schutz für FCoE-Umgebungen bieten, in denen eine VM versehentlich LLDP-Pakete an den (FIP/FSB)-Switch sendet und dadurch die FCoE-Verbindung zum Switch unterbricht. Während des Problemstatus wird diese Meldung unten im Syslog des Switch angezeigt.
Fehlermeldung: "LLDP_MULTIPLE_PEER_DETECTED: DCBX operationally disabled due as more than one PEER being present on interface" bei Aktivierung von LLDP über das Betriebssystem)
Warnmeldung:
-------------------------------------
LLDP_MULTIPLE_PEER_DETECTED: DCBX
-------------------------------------
Es treten zwei mögliche Probleme auf:
- VMware vDS sendet und empfängt oder sendet nur LLDP-Pakete.
- In der Regel geschieht dies, wenn die LLDP-Konfiguration auf VMware vDS als "Beide(Zuhören und Ankündigen)" oder als "Ankündigen" festgelegt ist.
- VMs senden LLDP-Pakete über VMware vDS.
- Wenn das Betriebssystem der VM LLDP-Pakete sendet, um seine Präsenz anzukündigen, unterbricht dies die FCoE-Konnektivität aufgrund der Art des FCoE-Betriebs.
Ein weiteres Indiz dafür, dass der Switch mehrere LLDP-Nachbarn sieht und sich im Problemzustand befindet:
Das Netzwerk kann sich selbst dann als vollkommen stabil präsentieren, wenn "show lldp neighbors" Zeigt an, dass sich der Switch im problematischen Zustand befindet. Wenn jedoch eine manuelle Maßnahme wie das Hinzufügen eines VLAN oder das Deaktivieren von LLDP auf dem vDS durchgeführt wird, kann dies einen vollständigen Ausfall aller FCoE-Sitzungen auslösen.
Warum sollte das passieren?
FCoE basiert auf DCBx und DCBx ist ein Protokoll, das auf LLDP ausgeführt wird.
"DCBX verwendet das Link Layer Discovery Protocol (LLDP), um Parameter zwischen zwei Link-Peers auszutauschen. LLDP ist ein unidirektionales Protokoll. Es gibt Verbindungs- und Managementinformationen über die lokale Station an benachbarte Stationen auf demselben IEEE 802-LAN weiter." - https://www.ieee802.org/1/files/public/docs2008/az-wadekar-dcbx-capability-exchange-discovery-protocol-1108-v1.01.pdf
"DCBX wird voraussichtlich über eine Punkt-zu-Punkt-Verbindung betrieben. Wenn mehrere LLDP-Nachbarn erkannt werden, verhält sich DCBX so, als ob die DCBX-TLVs des Peers erst vorhanden sind, wenn die Bedingung für mehrere LLDP-Nachbarn nicht mehr vorhanden ist. Ein LLDP-Nachbar wird durch seinen logischen MAC Service Access Identifier (MSAP) identifiziert. Das logische MSAP ist eine Verkettung der Gehäuse-ID- und Port-ID-Werte, die in der LLDPDU übertragen werden." - https://www.ieee802.org/1/files/public/docs2008/az-wadekar-dcbx-capability-exchange-discovery-protocol-1108-v1.01.pdfJede Änderung,
die dazu führt, dass LLDP neu gezählt wird, kann dazu führen, dass die TLV-Funktionalität von FCoE sofort unterbrochen wird.
解決方法
Option 1) Ändern Sie den LLDP-Modus auf dem vDS gemäß Broadcom KB.
Option 2) Wir fügen eine VMware vDS-Filter-Policy hinzu, um LLDP-Pakete von VMs zu blockieren. Diese Konfiguration allein blockiert jedes LLDP-Paket von jeder VM unter dieser vDS-Portgruppe. *Dieses Problem tritt auch bei VMware Standard vSwitch auf, es ist jedoch keine Problemumgehung oder Filteroption verfügbar. Der Kunde muss sicherstellen, dass seine VMs frei von LLDP sind.
Verfahren
Referenz: Handbuch zur Filterung des VMware-Datenverkehrs
- Suchen Sie eine verteilte Portgruppe oder eine Uplink-Portgruppe im vSphere Client.
- Wählen Sie einen Distributed Switch aus und klicken Sie auf die Registerkarte Netzwerke.
- Klicken Sie auf Distributed Port Groups, um die Liste der verteilten Portgruppen anzuzeigen, oder klicken Sie auf Uplink Port Groups, um die Liste der Uplink-Portgruppen anzuzeigen.
- Klicken Sie auf eine verteilte Portgruppe oder eine Uplink-Portgruppe und wählen Sie die Registerkarte Configure aus.
- Wählen Sie unter Einstellungen die Option Datenverkehrsfilterung und -markierung aus.
- Klicken Sie auf die Schaltfläche Aktivieren und neu anordnen.
- Klicken Sie auf Alle Datenverkehrsregeln aktivieren.
- Klicken Sie auf OK.
- Klicken Sie auf die Schaltfläche HINZUFÜGEN .
Referenzhandbuch für VMware-MAC-Datenverkehrsqualifizierer .
- Legen Sie im Fenster Rule die folgenden Parameter fest.
- Geben Sie der Regel einen Namen, um die Aktion zu beschreiben.
- Wählen Sie im Feld "Action" die Option "Drop" aus.
- Wählen Sie unter "Traffic direction" die Option "Ingress" aus.
- Klicken Sie auf die Registerkarte "MAC".
- Aktivieren Sie das Kontrollkästchen "Enable qualifier".
- Im Feld "EtherType":
- Wählen Sie "IS" aus.
- Wählen Sie "Custom" aus.
- Schreibe "88CC" als LLDP-Ethertyp.
- Klicken Sie auf OK.
- Am Ende sollten Sie die folgende Konfiguration haben.
- Überprüfen Sie, ob ein LLDP-Paket von der ausgewählten VM blockiert wird.
- Klicken Sie auf die Registerkarte Ports .
- Wählen Sie vDS Port ID aus, in der sich die VM befindet.
- Klicken Sie auf die Registerkarte Statistik .
- Überprüfen Sie "Dropped - Ingress Packets".
- Klicken Sie auf die Registerkarte Ports .
Damit ist die Konfiguration abgeschlossen.