Ein TCN veranlaßt eine Neuberechnung der aktiven Topologie

One bit to rule them all

Das Topology Change Notification BPDU (TCN) hat eine spezielle Aufgabe, welche eine vollkommen andere als die des Configuration BPDU ist. Das wird schon beim flüchtigen Vergleich der zwei Protocol Data Units klar: das Configuration BPDU ist 35 Byte lang und beinhaltet alle für den Spanning Tree Algorithmus notwendigen Daten. Dagegen ist das TCN nur magere 4 Byte kurz und zudem sind 31 Bit davon Nullbits. Ein einzelnes Bit ist also verantwortlich für die Funktion des Topology Change Notification BPDU.

Wer generiert wann ein TCN und warum?

Ein TCN wird generiert, wenn...

  1. ein Switch an einem Designated Port ein TCN empfängt. Das entspricht dem Weiterleiten (8.6.14.2.1).
  2. ein Switchport in den Forwarding Mode wechselt (8.6.14.2.2).
  3. ein Switchport vom Forwarding oder Learning State in den Blocking State wechselt (8.6.14.2.3).
  4. ein Switch Root Bridge wird (8.6.14.2.4).

Wie reagiert der Switch auf ein TCN?

Nun, vorausgesetzt er empfing das TCN an einem seiner Designated Ports, sendet er diese Notification seinerseits weiter an den nächsten Switch in Richtung Root Bridge (also über seinen Root Port) und zwar so lange bis sein 'Upstream'-Nachbar ihm den Empfang bestätigt. Diese unverzügliche, 'triggered' Bestätigung findet eleganterweise nicht mittels einer expliziten Nachricht statt, sondern erfolgt mit Hilfe eines Bits im Flag Feld eines regulären Configuration BPDU. Schauen Sie sich das Flag Feld noch einmal an. Das Most Significant Bit (MSB) wird dafür verwendet und deswegen auch Topology Change Acknowledgement (TCA) Bit genannt. So bewegt sich die Information (TCN) verläßlich und bestätigt in Richtung der Root Bridge.

Was passiert wenn das TCN die Root Bridge erreicht?

Die Root Bridge wurde also informiert daß sich die Topologie geändert hat. Sie wird nun in den folgenden Configuration BPDUs diese Information hinzufügen. Das nimmt auch überhaupt keinen Platz weg, denn es handelt sich hier um ein einziges Bit das gesetzt werden muß, nämlich das Least Significant Bit (LSB) im Flag Feld der Configuration BPDUs. Dadurch wird allen Switches nebenbei mitgeteilt daß ein Topology Change stattgefunden hat. Wunderbar, aber...

Wie reagieren nun die Designated Bridges?

Nun, eben nicht mit einer Neukalkulation des Baums. Wäre ja auch unsinnig da die Root noch für alle erreichbar ist. Nein. Das einzige was jetzt passiert, ist daß der Expiry Timer für die MAC Address Table gleich der Forward Delay gesetzt wird. Welcher Forward Delay? Der Forward Delay die der Root Switch durch seine Configuration BPDUs vorgibt. Im Normalfall, falls nicht explizit umkonfiguriert worden ist, sind das 15 Sekunden. Wenn der Root Switch dann aufhört so zu schreien, stellen alle still und leise den Expiry Timer wieder auf 300 Sekunden.

Was hat man davon?

Ganz einfach. In relativ kurzer Zeit sind die MAC Adresstabellen der Switches von alten und evtl. ungültigen Einträgen befreit. Ungültige Einträge? Nun, was passiert wenn Sie Ihren PC ausschalten? Seine MAC Adresse ist nicht mehr existent und trotzdem kennt sie noch jeder Switch im LAN. Alle Frames die an die MAC Adresse ihres PCs geschickt werden, werden brav angeliefert. Bloß wohin? Lediglich der Switch an dem ihr PC angeschlossen war, hat mitbekommen daß die MAC Adresse nicht mehr existiert. Was kümmert Sie das alles? Da sie ihren PC ausgeschaltet haben, herzlich wenig. Was aber wenn Sie ihren PC nicht aus- sondern umgestöpselt haben, sagen wir von Port 8 des einen Switches zum Port 5 eines zweiten Switches? Ihr PC würde ohne den TCN Mechanismus 5 Minuten lang kein einziges Frame sehen! (Unter der Voraussetzung daß Ihr PC nicht durch Senden eines Frames vorher auf sich aufmerksam macht). Mit TCN dauert das Ganze nur noch 15 Sekunden und'n paar zerquetschte. Ist das nicht schön?

Haken oder nicht Haken? Das ist hier die Frage...

Haben Sie aber tatsächlich Ihren PC ausgeschaltet, werden nach 15 Sekunden alle Switches im LAN ihn vergessen haben. Aber es gäbe da einen anderen PC, im zweiten Stock, mit dem ihr PC noch bis zuletzt innigen Datenaustausch betrieb. Dieser nun so allein gelassene PC im zweiten Stock, hat in seinem ARP Cache einen Eintrag; raten Sie mal welchen. Und er versucht verzweifelt ihren PC zu erreichen. Was passiert mit all den sehnsüchtigen Frames, die er auf die Reise schickt? Werden Sie zugestellt? Natürlich nicht, immerhin ist Ihr PC ja ausgeschaltet. Werden sie verworfen? Mitnichten. Sie werden geflutet, da es sich um unknown Unicast handelt und kommen so in jede Ecke und jede Ritze des LANs. Und das sehnsüchtige Rufen verhallt, von allen gehört, unbeantwortet. Besser wäre es wohl gewesen, wenn der ARP Cache Eintrag schneller altert, als der MAC Adresseintrag in den Switches.

Links zum Thema