Source Routing
# Source Routing

Source Routing (Abk.: SR) ist eine Wegwahltechnik, mit der der Senderknoten eine vollständige Wegsequenz zum Zielknoten bestimmen kann. Dieses Verfahren ist die Spezifizierung eines Routing-Algorithmus auf LLC-Ebene.

## Überblick

Es stellt ein komplementäres Verfahren zum Spanning Tree Protocol dar. Damit ist es möglich, redundante Strukturen zu erkennen. Source-Routing und Spanning Tree unterscheiden sich in der Informationsspeicherung, die zum Transport eines Datenpaketes vom Absender zur Zielstation erforderlich ist. Die Source bezeichnet den Absender, der die Route, welche ein Paket nehmen soll, spezifiziert. Damit hält nicht die Bridge die Informationen über die Route des Datenpaketes, sondern die sendende Station handhabt die Routing-Tabellen über alle offenen (aktiven) Verbindungen.
Der Begriff „Source Routing“ wird sowohl für Token-Ring-Netzwerke verwendet als auch für besondere Optionen von IP. Source Routing auf Token-Ring-Netzwerken ist ebenfalls ein Verfahren zur Wegwahl bei redundanten Pfaden zwischen Token-Ring-Koppelelementen (Brücken) und bedient sich der unterschiedlichen Rundsende-Bits im Kopf der LLC-Rahmen. Zur optimalen Gestaltung großer Token-Ring-Netzwerke ist eine Kenntnis der Details der Funktionsweise (Broadcast-Varianten SRE versus ARE, Hop-Count Limit, Spanning Tree Implementierung der Pfadkosten) unerlässlich.

## Details

Im Optionsfeld des IP Headers sind folgende Optionen festgelegt:
* Strict Source Routing (Option 9 RFC 791): Hinter dem Optionsfeld sind maximal 9 Wegknoten festgelegt, die durchlaufen werden müssen. Dies ist eine feste Strecke.
* Loose Source Routing (Option 3 RFC 791): Hinter dem Optionsfeld sind maximal 9 Wegknoten festgelegt, die durchlaufen werden müssen. Es legt nicht den kompletten Weg fest.
Die Option „Record Route“ steht im engen Zusammenhang mit dem Source Routing. Ist diese Option gesetzt, so fügt jeder durchlaufene Knotenpunkt seine IP (maximal 9) an das vorgegebene Feld hinter dem Optionsfeld an.
Eine Source Route ist statisch, falls alle Routen statisch definiert sind. Eine Source Route ist dynamisch, falls alle Routen dynamisch erzeugt und nach Änderung der Topologie geändert werden.

## Sicherheit

Source Routing ist sicherheitsbedenklich: ein Sniffer kann seine IP-Adresse in das Routingfeld eintragen und erhält somit alle Pakete an seinen Host. Viele Firewalls und Router verwerfen deshalb diese Pakete.