Hallo Tascor,
wenn du VLAN Algorithmus schreibst, meinst du bestimmt den Spanning Tree Algorithmus, oder?
Für unsere Leser will ich kurz erläutern, was VLAN ist und was es mit dem Spanning Tree- oder Rapid Spanning Tree – Algorithmus auf sich hat

.
VLAN = Virtual Local Area Network. Es ist dazu da, ein physikalisches Netzwerk in einzelne Teilnetze aufzuteilen.
Das lässt sich an Hand eines kleinen Beispiels anschaulicher machen:
Eine kleine Firma hat 12 Rechner, zwei hat der Chef, 3 die Buchhaltung, 2 für die Produktion und die restlichen 5 Rechner werden von der Bürobelegschaft benutzt.
Die Firma hat ein Netzwerk. Nun soll die Belegschaft aber keinen Zugang auf die Daten der Chef – Rechner oder der Buchhaltungsrechner haben. Die Produktions- und Bürorechner sollen in einem Netzwerk zusammengefasst werden.
Da kommt ein VLAN zum Einsatz.
Mit VLAN lassen sich nun drei getrennte virtuelle Netzwerke bauen, 1 für den Chef, eines für die Buchhaltung und eines für die Belegschaft und Produktion. Doch soll es immer noch möglich sein, über das Firmennetzwerk intern Nachrichten zu versenden.
Nun gibt es verschiedenen Möglichkeiten, die Kommunikation zwischen den einzelnen VLANs zu sichern:
- Portbasiert (Datenpakete werden direkt zum Port des Empfängerrechners zugestellt)
- IP – basiert (Datenpakete werden zu einer bestimmten IP – Adresse im Netz geschickt)
- Tagged VLAN (Den Datenpaketen werden nach dem Absenden VLAN – Informationen hinzugefügt und beim Empfänger vor dem eigentlichen Empfang wieder entfernt)
Funktionsweise eines VLANs (Spanning Tree Algorithmus):
Jeder Switch (im Volksmund oft fälschlicher Weise als Router bezeichnet) werden hier als so genannte Multiport Bridges (Brücken) angesehen.
Ablauf:
1. Alle Bridges Power on.
2. Jede Bridge geht davon aus, dass sie die Root Bridge („Chef“ des Netzwerkes) ist und sendet bestimmte Datenpakete (Bridge Protocoll Data Units), BPDUs an eine Multicast Adresse.
3. Die Bridge mit der geringsten Priorität wird zur Root Bridge. Wenn zwei Bridges dieselbe Priorität haben wird die Bridge mit der kleineren MAC (Media Access Controller = Netzwerkkarte) – Adresse zur Root Bridge.
4. Die Root Bridge sendet Konfigurations- BPDUs.
5. Jedes Teilnetz bestimmt eine so genannte „designated Bridge“. Nur noch über die designated Bridges sind diese Teilnetze noch zu erreichen.
Das geschieht dadurch, dass jede Bridge in einem Teilnetz einen Root Port bestimmt (Port mit der kleinsten ID und den geringsten Pfadkosten (Entfernung) zur Root Bridge)
6. Alle zwei Sekunden sendet die Root Bridge ein Signal, welches dem restlichen Netzwerk mitteilt „hier bin ich!“
7. Bleibt dieses Signal aus, wird von einer Veränderung der Netzstruktur ausgegangen. Die Netzwerkpfade werden neu berechnet, was ca. 30 Sekunden dauert. In dieser Zeit kann keiner Pakete senden, ein Angriff von außen wäre möglich.
Um diese Sicherheitslücke zu schließen wurde der rapid Spanning Tree Algorithmus entwickelt. Dabei gleichen sich die Punkte 1 -6.
Bleibt hier das Signal aus, wird zunächst normal weitergearbeitet, während im Hintergrund schon die neuen Netzwerkpfade berechnet werden. Ist die Berechnung abgeschlossen, wird das Netzwerk auf die neue Struktur ungeschaltet, was nur noch ca. eine halbe Sekunde dauert.
Ich hoffe, ich konnte Deine Frage damit einigermaßen beantworten.
Früher hat mein Partner meine Notebooks mit benutzt, zu Weihnachten habe ich ihm ein Notebook geschenkt, da er sich teilweise scheute, auch nur PDF Files abzuspeichern, aus Angst, mir den Speicherplatz zu nehmen. Das fand ich fies und dachte mir, da muss ein eigenes System her, auf dem er schalten und walten kann, wie er will.

Das Notebook funktioniert wieder einwandfrei. Doch hoffe ich, dass das das letzte Mainboard war, was ich für dieses Notebook gekauft habe…
HCL in der Informatik bedeutet Hardware Compatibility list, also Liste kompatibler Hardware

.
Mittlerweile gibt es so viele verschiedene Linux Distributionen, da verliert man leicht den Überblick. Aus deiner Schilderung entnehme ich, dass du mit SUSE gearbeitet hast. Okay, SUSE ist nicht wirklich gut als Einsteiger Linux geeignet. Damals, als ich mit SUSE Linux gearbeitet habe, war es och so, dass ich erst einmal etliche Bibliotheken installieren musste, allein nur um Musik im MP3 Format abspielen zu können.
Für Ein- und Umsteiger ist Ubuntu Linux sehr gut geeignet. Auch für erste Server Experimente eignet sich Ubuntu, da es Ubuntu Linux auch als Server Version gibt.

Netzwerke im Token Ring? Oh weia, Coax Kabel und Endterminatoren

. Das müssen noch Zeiten gewesen sein

. Und bloß nicht mit einem Bürostuhl über das Kabel rollen *ggg*…
Du hast Recht, es lohnt sich immer seine Hausaufgaben zu machen

. Das Erledigen dieser speziellen Hausaufgaben hat mich wirklich weiter gebracht auf diesem Gebiet.
Ich bin Solkar nicht böse, wie du schon schreibst, er hätte fragen sollen, da hätte ich ihm sagen können, dass das Wort Freundschaft da keine tiefere Bedeutung hat. Diese Mühe hätte er sich sparen können. Darüber haben wir auch geredet und sind übereingekommen, dass vorher gefragt wird

.
Freut ich, wenn dir mein Programm gefällt. Nochmals vielen Dank für die Codesnips für die polymorphe Programmierung!

Damit konnte ich sehr wohl etwas anfangen. Doch ich dachte, du könntest kein Csharp?
Mittlerweile habe ich auch noch andere Programme geschrieben. Unter anderem ein kleines Malprogramm, MS Paint sehr ähnlich. Demnächst will ich ein Münzenverwaltungssoftware schreiben, auch in C#. Dabei muss aber eine größere Datenbank mit eingegliedert werden. Daten für die Datenbank sind reichlich vorhanden und müssten erst einmal geordnet werden.
Daten aus mehr als 25 Jahren Münzensammeln, da kommt eine Menge zusammen. Das sind mehrere hundert verschiedenen Münztypen… Das wird mein größtes Projekt. Aber zum Lernen der Sprach C# reichen erst einmal kleine Anwendungen.
Ich komme eindeutig besser mit der .Net Programmierung zurecht. MFC, welche ja auch schon mehr als veraltet sind, sind mehr als nur komplex…
Aber sicher erinnere ich mich an meine Anfänge in C

. Ja ja, wo man noch seine ersten if – Verzweigungen und for – Schleifen gebaut hat

.
Mit dem try – catch Block wird verhindert, dass das Programm zur Laufzeit abstürzt. Man bietet der Anwendung also eine Möglichkeit aus einem Fehler wieder herauszukommen.
Viele Grüße
Andrayca