Routingkriterien. Leitwegbestimmung (Routing) Aufgabe: Leitwegbestimmung für Pakete durch das Netzwerk vom Quell- zum Zielsystem

Ähnliche Dokumente
Routing Algorithmen. Barbara Draxler Zenina Huskic Peter Wieland Sebastian Zehentner. 31. Jänner 2002

Rechnernetze Übung 10. Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Juni 2011

Themen. Vermittlungsschicht. Routing-Algorithmen. IP-Adressierung ARP, RARP, BOOTP, DHCP

5. Weitverkehrsnetze und

Vermittlungsschicht: - Transport der Datenpakete von der Quelle zum Ziel + Fehlerkontrolle - Weitere Aufgaben: o Kenntnisse über das Kommunikationsnet

Funktionalität der Vermittlung. Vermittlungsschicht. Vermittlungstechniken. Adressierung. Ring. Linie. Layer 3 Network. Aufgaben: gekoppelt.

Wo geht s lang: Routing. Erstellt von Simon Wegbünder.

aktive Netzwerk-Komponenten Repeater Hub Bridge Medienkonverter Switch Router

Router. Prof. Dr.-Ing. Georges Awad 1

Überblick. Daten- kommunikation

Rechnernetze I SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 10.

Netzwerke 3 Praktikum

Beispielbild. Georouting. Jakob Pfender Institut für Informatik

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016

Delay Rechnung. Was ist die mittlere Wartezeit T eines Pakets bei idealem Kanalzugriff mit einer zentralen globalen Warteschlange?

Routing Algorithmen. Begriffe, Definitionen

Chapter 6 Routingprotokolle. CCNA 2 version 3.0 Wolfgang Riggert, FH Flensburg auf der Grundlage von

Dynamisches Huffman-Verfahren

Einfluss der Window Scale Option auf die Fairness in TCP/IP-Netzen

Seminar Moderne Konzepte für weitverteilte Systeme SS 02

Tutorübung zur Vorlesung Grundlagen Rechnernetze und Verteilte Systeme Übungsblatt 7 (3. Juni 7. Juni 2013)

Übung 5: Transport. Rechnernetze. Wintersemester 2014/ Allgemeine TCP Verständnisfragen

Clustering (hierarchische Algorithmen)

Aufbau und Wirkungsweise

Internet Routing am mit Lösungen

Rolf Wanka Sommersemester Vorlesung

Hauptdiplomklausur Informatik. September 2000: Rechnernetze

Chapter 7 Distanzvektorprotokolle. CCNA 2 version 3.0 Wolfgang Riggert, FH Flensburg auf der Grundlage von

Lokalisierung und Topologiekontrolle

Algorithmen & Komplexität

Modul N5 - Routing. Informatik erleben. Anwendung: http, smtp. Transport: TCP, UDP. Segment. Vermittlung: IP. Datagramm. Sicherung: Ethernet, PPP

Grundlagen der Telematik AMW Übungsaufgaben

Internet Routing. SS 2012 Grundlagen der Rechnernetze Internetworking

Verbesserungsheuristiken

Informations- und Kommunikationssysteme

Digitale Kommunikation in IP-Netzwerken. Routing / Routingprotokolle

Vernetzte Systeme Network Layer Vermittlungsschicht Schicht 3 Netzwerk Schicht

Metropolitan Area Network (MAN) Schnelle LANs, WANs und MANs

Rechnernetze I. Rechnernetze I. 1 Einführung SS Universität Siegen Tel.: 0271/ , Büro: H-B 8404

Router 1 Router 2 Router 3

Lösungsvorschlag zur 12. Übung

Internet Routing. Grundprinzipien Statisches Routing Dynamisches Routing Routingprotokolle Autonome Systeme

2.3 Routing im Internet

Fortgeschrittene Netzwerk- und Graph-Algorithmen

5. Clusteranalyse. Lernziele: Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften

5. Clusteranalyse Vorbemerkungen. 5. Clusteranalyse. Grundlegende Algorithmen der Clusteranalyse kennen, ihre Eigenschaften

Chapter 9 Troubleshooting. CCNA 2 version 3.0 Wolfgang Riggert, FH Flensburg auf der Grundlage von

Definition. Gnutella. Gnutella. Kriterien für P2P-Netzwerke. Gnutella = +

Projektierung und Betrieb von Rechnernetzen

Internet Protokoll IP Routing Routing Protokolle. Internet Control Message Protocol (ICMP, RFC792) Wichtige ICMP Typen

Vermittlungsschicht ( network layer )

ECN. Explicit Congestion Notification ECN

Zustellerkonzepte in Mehrkern-Systemen

Distance Vector Multicast Routing Protokoll

IP routing und traceroute

Rechnernetze I SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 25.

Übersicht. Aufgaben der Vermittlungsschicht ATM Exkurs Vermittlungshardware Routing

Übersicht. Aufgaben der Vermittlungsschicht ATM Exkurs Vermittlungshardware Routing

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Grundlegende Steuer- und Verwaltungsfunktionen (ICMP)

FOPT 5: Eigenständige Client-Server-Anwendungen (Programmierung verteilter Anwendungen in Java 1)

Übungen zu Rechnerkommunikation

Deutsches Forschungsnetz

TCP flow control, congestion avoidance

Modul 5: TCP-Flusskontrolle

Mathematische Grundlagen der dynamischen Simulation

11 Peer-to-Peer-Netzwerke

Routing im Internet Wie findet ein IP Paket den Weg zum Zielrechner?

Prof. Dr. R. Sethmann Übungen: Datum: Rechnernetze und Telekommunikation

Routing im Internet. Dipl.-Ing.(FH) Mario Lorenz

Informatik II, SS 2014

15 Transportschicht (Schicht 4)

Bayeux. Dirk Ewerlin

.NET Networking 1. Proseminar Objektorientiertes Programmieren mit.net und C# Matthias Jaros. Institut für Informatik Software & Systems Engineering

Kü /Info Oberstufe Netzwerke SJ. 2014/2015

Inhaltsverzeichnis. Teil I TCP/IP-Grundlagen Einführung... 11

Alexander Kiontke Routing Protokolle

3. Das Reinforcement Lernproblem

IP Internet Protokoll

Virtuelle Präsenz. Peer to Peer Netze. Bertolt Schmidt

Entwurf und simulative Bewertung eines Verfahrens zur Behandlung von Engpässen in Bandwidth-Broker-gesteuerten DiffServ- Netzwerken

Computernetze In Brief

Informationsfluss. Schicht 5 Protokoll. Schicht 4 Protokoll. Schicht 3 Protokoll. Schicht 2 Protokoll

Datenzentrisches Routing und Directed Diffusion

4 Greedy-Algorithmen (gierige Algorithmen)

Themen. Flußkontrolle. Stefan Szalowski Rechnernetze Sicherungsschicht

Statisches Routing. Jörn Stuphorn Bielefeld, den Juni Juni Universität Bielefeld Technische Fakultät

Lösungen für Bufferbloat

Ausgangspunkt: punktförmige hochdimensionale Feature-Objekte

Parallelrechner (1) Anwendungen: Simulation von komplexen physikalischen oder biochemischen Vorgängen Entwurfsunterstützung virtuelle Realität

Internetanwendungstechnik. TCP/IP- und OSI-Referenzmodell. Gero Mühl

Der Backoff-Algorithmus

Universität Stuttgart. Musterlösung. Communication Networks I. 11. März Termin: IP-Adressierung und -Routing

Dienstkonzept und Routing-Algorithmen für Mehrpunktkommunikation (Multicast) Prof. B. Plattner ETH Zürich

Internetworking. Motivation für Internetworking. Übersicht. Situation: viele heterogene Netzwerke

Netzwerke und Ihre Protokolle

Teleseminar im WS 1999/2000

Client-Server mit Socket und API von Berkeley

Grundsätzliches. Grundsätzliche Überlegungen zu Netzwerken Stand : Juli 2006

Transkript:

Leitwegbestimmung (Routing) Aufgabe: Leitwegbestimmung für Pakete durch das Netzwerk vom Quell- zum Zielsystem Routingkriterien Wünschenswerte Eigenschaften widersprechen oft einander, z.b. Fairneß und Optimalität Routingalgorithmus eines IS entscheidet, auf welcher Ausgangsleitung ein eingegangenes Paket weitergeleitet wird Beispiel : A B C Datagramm Virtuelle Verbindung individuelle Entscheidung für jedes Paket Leitwegbestimmung nur bei Verbindungsaufbau D E Wünschenswerte Eigenschaften eines Algorithmus Stabil (gleichmäßige Ergebnisse, keine sprunghafte Änderungen durch neue Gegebenheiten) Robust (Kompensation von Knoten- (=IS) und Leitungsausfällen) Korrekt (Pakete sollen immer beim richtigen Empfänger ankommen) Einfach (kleine/übersichtliche/verifizierbare Tabellen niedrige Kosten für Erstellung und Aktualisierung) Fair (gleiche Behandlung aller Quellen) Optimal (bestmögliche Dienstqualität je nach Kriterium, z.b. Kosten, Verzögerung, Durchsatz) F G H Kommunikation zwischen A und F, B und G sowie C und H lastet Bus unter der Optimalitätsbedingung maximaler Durchsatz am besten aus, aber individuelle Kommunikation D zu E wird bei einem solchermaßen global optimierten Routingalgorithmus unfair behandelt Kompromiß nötig, häufig realisiert wird deshalb eine Minimierung der Teilstrecken (hops) pro Paket reduziert die Verzögerung guter Durchsatz für alle Teilnehmer vermindert benötigte Bandbreite

Klassifikation der Routingverfahren Nicht - adaptive (statische) Verfahren Leitweg zwischen i und j wird für alle i, j offline vor der Inbetriebnahme des Netzwerks bestimmt gehen von Mittelwerten aus keine Berücksichtigung des aktuellen Netzzustands keine Änderung während des Betriebs Optimaler Pfad zwischen zwei Netzknoten Frage: welches ist der optimale Pfad zwischen zwei Netzknoten? z.b. zwischen Knoten B und allen anderen Knoten Antwort: Erstellung eines Baums für Ziel B mit den minimalen Pfadlängen Beispiel mit IS-Entfernung als Metrik für Optimalität: Adaptive Verfahren Gegebenes Netz Optimale Pfade für Ziel B Entscheidungen basieren online auf aktuellem Netzzustand Messungen / Schätzungen der Topologie und des Verkehrsaufkommens Weitere Unterteilung in - zentralisierte Verfahren - isolierte Verfahren - verteilte Verfahren Mögliche Metriken für "optimalen" Weg, d.h. "kurzen" Pfad geographischer Abstand Anzahl der Knoten (IS) Bandbreite durchschnittliche Datenmenge Kommunikationskosten Verzögerung bei Warteschlangen, usw. Anmerkungen es kann mehrere Bäume geben, die optimal sind Kenntnisse über das gesamte Netz müssen verfügbar sein daher hauptsächlich für statisches Routing interessant Der optimale Weg ist gegeben durch das Minimum einer nach den Optimalitätskriterien aufgestellten Zielfunktion

Die Bestimmung des kürzesten Pfades zwischen zwei Netzknoten Beispiel (Entfernung ist durch Zahl an Graphenkante angegeben): Mehrfach-Leitwegbestimmung die Information über den zu wählenden Pfad wird in die Routingtabelle jedes IS eingetragen, sie enthält für jeden Zielknoten den nach einmal bestimmten Kriterien optimalen Nachbarknoten, z.b. Ziel A B C Knoten D K E bisher wurde nach einem optimalen Pfad gesucht Shortest path algorithm, z.b. nach Dijkstra (1959): Gesucht ist kürzester Pfad A nach D: 1. A als fest markiert (ausgefüllter Kreis ) 2. alle direkten Nachbarknoten mit Distanz zu A markieren (Pfadlänge, Knoten der Herkunft): z.b. B(2,A) und G(6,A) Vergleich aller nicht fest markierten Knoten und den mit geringster Zahl als fest markieren z.b. B(2,A) 3. dieser Knoten wird Ausgangspunkt für iteratives Verfahren (d.h., weiter mit 2., bis alle Knoten als fest markiert wurden) Startwert= Nur die ersten 5 Iterationen gezeigt häufig fast gleich gute Pfade vorhanden Vorteile: Verteilung des Kommunikationsaufkommens auf mehrere Pfade durch Mehrfach-Leitwegbestimmung Lastverteilung Ausfallsicherheit Auswahl des Pfades entweder zufällig (zur reinen Lastverteilung) oder nach verschiedenen Optimalitätskriterien (Sprache auf Leitungen mit niedriger Laufzeit, Daten auf preiswerte Kanäle etc.) Realisierung durch zusätzliche Spalten in Routingtabelle, häufig wird noch eine Wahrscheinlichkeit G i je Spalte/Pfad hinzugefügt, mit der dieser gewählt werden soll im Ergebnis ist für einen Knoten (hier A) der optimale Weg zu jedem anderen Knoten bestimmt (erkennbar mittels Zurückverfolgen durch alle Vorgängerknoten)

Beispiel zur Mehrfach-Leitwegbestimmung hier mit drei (durch G i gewichteten) zufällig ausgewählten Alternativpfaden Routingtabelle im Knoten J Fluten als nicht - adaptives Routing Prinzip empfangenes Paket wird vom IS an alle Nachbar-IS übertragen (nur nicht über den Ankunftspfad) Nachteil: erzeugt unendlich viele Pakete Auswahl der Alternativen Generieren einer Zufallszahl z (0 z < 1) A 1 : 0 z < G 1 A 2 : G 1 z < G 1 + G 2... A n : G 1 + G 2 +... + G n-1 z < 1 Techniken zur Begrenzung der Paketanzahl Hopzähler im Header des Pakets - jeder IS dekrementiert diesen bei jedem Versenden - bei Hopzähler = 0 wird Paket verworfen - Initialisierung auf maximale Pfadlänge (falls bekannt) Jede Station merkt sich schon übertragene Pakete und löscht diese bei erneutem Auftreten Selektives Fluten - empfangenes Paket wird vom IS an Nachbarstationen übertragen, die in Richtung des Zieles liegen - bei sinnvollen Topologien ist des eine Optimierung Bewertung extrem robust: militärische Anwendung keine Kenntnis der Topologie erforderlich keine Initialisierung, Topologieänderungen online möglich trotzdem wird die schnellste Übertragung von A nach B erreicht (ohne Überlastberücksichtigung) Beispiel für Ziel = B:

Bewertung der statischen Routingverfahren Tabellen werden von Netzwerkadministrator erstellt Tabellen werden bei Inbetriebnahme der IS geladen und dann nicht mehr verändert Eigenschaften + einfach + gute Ergebnisse bei recht konstanter Topologie und Verkehr - schlecht bei stark variierendem Verkehrsaufkommen und bei Topologieänderungen Trotzdem sehr häufig benutzt! Zentralisierte adaptive Leitwegbestimmung Prinzip : Im Netz: RCC (Routing Control Center, Leitwegsteuerzentrum) Jedes IS sendet periodisch Statusinformation an RCC, z.b. - Liste der verfügbaren Nachbarn - aktuelle Warteschlangenlängen - Auslastung der Leitungen RCC berechnet daraus optimalen Pfad für jedes IS-Paar bildet Leitwegtabellen und verteilt sie an IS Eigenschaften : + optimale Entscheidungen im RCC durch globale Information möglich + keine Leitwertberechnung in IS nötig - Berechnung muß oft durchgeführt werden (z.b. jede Minute oder noch öfter) - geringe Robustheit, da Zentralsteuerung - IS erhalten Tabellen nicht gleichzeitig - Verkehrskonzentration in der Nähe des RCC:

Merkmal: Isolierte adaptive Leitwegbestimmung hier zwei Verfahren skizziert: es werden nur lokale Informationen fürs Routing benutzt Hot Potato (heiße Kartoffel) Algorithmus einkommendes Paket an die Ausgabeleitung mit der kürzesten Warteschlange weitergeben + sehr einfaches Verfahren - keine Ankunftssicherheit daher i.a. Kombination mit statischer Leitwegbestimmung Backward learning (Rückwärtslernen) Pakete enthalten Info über Quellknoten und Hopzähler IS speichert für jede Eingangsleitung die Entfernung (= Stand des Hopzählers) zum Quell-IS kommt ein Paket an dieser Eingangsleitung mit niedrigerem Entfernungswert für den gleichen Quell-IS an, wird der alte Wert verworfen P 1 (..., A, 4,... ) Add ( A, I 1, 4 ) P 2 (..., A, 3,... ) Update ( A, I 2, 3 ) in einer Einschwingphase lernen die IS die minimalen Entfernungen im Netz Leitwegbestimmung möglich + einfaches Verfahren - nimmt gleiche Verzögerung für beide Leitungsrichtungen an, durch verschiedene Last aber nicht immer gegeben - nur Verbesserungen werden gelernt, aber keine Verschlechterungen durch Ausfälle, etc. Verbesserung durch periodisches Löschen der Tabellen, aber: zu häufig: Netz überwiegend in der Lernphase zu selten: langsame Reaktion auf Verschlechterungen Verteilte adaptive Leitwegbestimmung Prinzip IS tauschen mit Nachbarn Leitweginformation aus Verfahren Jedes IS kennt/schätzt/mißt "Entfernung" zu jedem Nachbarn Anzahl der Teilstrecken ( = 1 ), oder Verzögerungszeit (Echo - Pakete), oder Warteschlangenlänge,... IS sendet periodisch seinen Nachbarn Liste mit geschätzten Entfernungen zu jedem Ziel IS berechnet aus empfangenen Listen eine neue Routing-Tabelle für alle Knoten mit (Ziel-IS, bevorzugter Ausgangspfad, "Entfernung") nach folgendem Muster gegeben sei ein einfaches Netz X-Y-Z: a) X schätzt/mißt Entfernung zu Y, z.b. i b) X empfängt Liste E von Nachbarn Y c) X generiert neue Leitwegtabelle wie folgt: Entfernung Y Z: E(Z) Entfernung X Z über Y: E(Z) + i Anwendung bis 1979 im ARPANET, dann im Internet unter Namen RIP (routing information protocol) bekannt und verwendet

Beispiel zur verteilten Leitwegbestimmung Hierarchische Leitwegbestimmung Motivation große Anzahl von IS bedeutet - aufwendige dynamische Leitwegberechnung - sehr große Routingtabellen mit entsprechender Suchzeit und Verteilzeit durch ohnehin übliche Zusammenfassung in hierarchisch strukturierte Einheiten (Regionen) kommunizieren nur wenige ausgewiesene Rechner zwischen den Regionen + nach außen wirkt eine Region wie ein Knoten + stark verkleinerte Routingtabellen Vergleich Beispiel für 2 Tabellen = zweistufige Hierarchie gemessene oder geschätzte Verzögerung: JA=8 JI = 10 JH = 12 JK = 6 es wird nicht immer der optimale Pfad berechnet z.b. 1A 5C flache Tabelle: 5 Hops hierarch. Tabelle: 6 Hops alte Leitwerttabelle wird nicht berücksichtigt, sondern nur die aktuelle Schätzung/Messung gute Adaption Entwurf nach Erfahrungswerten optimal sind ln(n) Ebenen die Pfadverlängerung ist i.a. zu vernachlässigen

Überlastkontrolle Rückblick auf besprochene Elemente der Vermittlungsschicht Verbindungskonzepte Dienst: verbindungsorientiert, verbindungslos Realisierung: virtuelle Verbindung, Datagramm Leitwegbestimmung (Routing) statisch dynamisch Gründe für Überlastung (congestion) Ankommender Verkehr überfordert Ausgangsleitungen IS zu langsam für Routing - Algorithmen,... Überlastung tendiert dazu, sich selbst zu verstärken Beispiel: IS wirft wegen Überlastung Paket weg Generell Kapazität erhöhen Verkehr erniedrigen Möglichkeiten Ansätze zur Überlastkontrolle Vermeiden, bevor Überlast auftritt, beim Sender und/oder Empfänger, z.b. durch Flußkontrolle Pufferanzahl je Ausgangswarteschlange auf einen bestimmten Anteil an den freien Puffern begrenzen Traffic Shaping Glätten der Überlastspitzen durch ggf. verzögertes Senden auf Kosten der Durchlaufverzögerung Beheben, nachdem Überlast auftritt, z.b. durch Verwerfen von Paketen ankommendes Paket wird weggeworfen, wenn es nicht gepuffert werden kann 1. kein Problem bei Datagramm-Verbindungen 2. bei verbindungsorientiertem Dienst Paket puffern, bis Empfang quittiert wurde Paket muß erneut gesendet werden (zusätzlicher Verbrauch an Bandbreite) Sender kann Puffer nicht freigeben ( zusätzliches Binden von Ressourcen ) Vergleich Überlastkontrolle Flußkontrolle regelt Subnetz (Schicht 3) betrifft Pkt-zu-Pkt (Schicht 2) möglichst vorab vermeiden Effekt reduzieren verwendet ggf. Flußkontrolle

Verklemmungen (Deadlocks, Lockups) "Store - and - forward" - Verklemmungen der IS bei begrenzter Puffermenge (hier im Beispiel jeweils 4) A will 4 gepufferte Pakete zu B senden und umgekehrt keine freien Puffer zum Empfang Verklemmung A Lösungsmöglichkeiten verschiedene Algorithmen bekannt, hier nicht diskutiert B