=====Wie funktioniert eigentlich unser Internet?===== ====Das "Internet" und unsere Rolle darin==== Als eine der zehn größten Universitäten in Deutschland sind wir aus Sicht des Netzwerks im Grunde genommen eine Großstadt. Mit über 100.000 Netzwerkanschlüssen im Endgeräte-Bereich (Access-Ports) und über 1.000 WLAN Access-Points - Tendenz steigend - verfügen wir über ein vergleichsweise großes Datennetz. Durch vorausschauende Planung vor und in den 2000er Jahren ist es uns gelungen, schon vor der breiten Verfügbarkeit redundanter Anschlüsse seitens des DFN-Vereins durch die Kooperation mit der "Telekommunikation Mittleres Ruhrgebiet GmbH" (TMR) eine redundante, d.h. mehrfach ausgelegte Internetanbindung zu realisieren. Da die Anbindung eines Netzwerks unserer Größe nicht mit den aus Haushalten oder kleineren Unternehmen bekannten Komponenten (FritzBox, WLAN-Router o.ä.) realisiert werden kann war es nötig, in spezielle Hardware zu investieren. Wir besitzen für die Internetanbindung der RUB deshalb schon seit Jahren immer zwei spezielle Router. Sie zeichnen sich dadurch aus, dass sie das sogenannte "Border Gateway Protocol" (BGP) beherrschen. Das ist die "Sprache" des Internet-Routings. Dieses "Internet" ist prinzipiell eigentlich nur eine größere Ansammlung sogenannter autonomer Systeme (AS), die, wie der Name schon sagt, autonom funktionieren und wie ein Spinnennetz miteinander verbunden sind. Ein autonomes System ist beispielsweise ein Internetprovider wie die Deutsche Telekom, Vodafone oder - wie in unserem Fall - der DFN-Verein als Provider für Universitäten in Deutschland. Auch die TMR ist ein autonomes System, ebenso wie wir, die Ruhr-Universität. Alle autonomen Systeme haben eine sogenannte AS-Nummer und sind mit mindestens einem weiteren autonomen System verbunden, um Routen und Daten auszutauschen. Relevante AS-Nummern für uns sind zum einen wir selbst (AS29484), der DFN-Verein (AS680) und die TMR (AS12329). Alle diese Daten sind kein Geheimnis, man kann sie z.B. [[https://bgp.he.net/AS29484|hier]] nachschlagen und dort auch sehen, wie wir mit dem Rest des Internets verbunden sind. Eine weitere interessante Stelle ist [[https://stat.ripe.net/AS29484|hier]]. ====Fehleranfälligkeit==== Autonome Systeme tauschen über ihre Verbindungen untereinander Routen und Daten aus, das funktioniert erstaunlich gut - und das ist ernst gemeint! Denn die Konfiguration der Systeme ist recht komplex und es passieren immer wieder Unfälle (siehe z.B. [[https://taz.de/Ausfall-des-Videoportals/!5186029/|hier]], [[https://blog.cloudflare.com/how-verizon-and-a-bgp-optimizer-knocked-large-parts-of-the-internet-offline-today/|hier]] oder [[https://www.manrs.org/2020/07/big-route-leak-shows-need-for-routing-security/|hier]]). Dagegen helfen einige neuartige Technologien (z.B. RPKI) und die Konfiguration geeigneter Filter. Wir nutzen diese Technologien, es führt aber zu weit, darüber an dieser Stelle zu berichten. ====Die globale Routingtabelle==== Nimmt man sich die Liste aller Netzwerke des Internets vor, die aktuell in Benutzung sind, so kommt man Stand heute, 24.11.2020, auf 467.676 IPv4-Netzwerke weltweit. Die Anzahl der Routen, also der Wege über verschiedene autonome Systeme hin zu jedem einzelnen Netzwerk ist deutlich höher, nämlich 851.411. Das ist die (heutige) Anzahl der Einträge in unserer Routingtabelle für das IPv4-Internet. Für IPv6 sind die Zahlen noch etwas kleiner, es gibt heute 58.042 IPv6-Präfixe (Netzwerke) und 101.654 Routen dort hin. Die Daten stammen von [[https://www.cidr-report.org/]] bzw. [[https://www.cidr-report.org/v6]]. Für ein halbwegs aktuelles Computersystem scheinen die Zahlen auf den ersten Blick nicht sehr groß zu sein, mit aktueller PC-Hardware kann man durchaus Tabellen mit knapp einer Million Zeilen verarbeiten. Allerdings geht es beim Routing um viel speziellere Dinge, es müssen nämlich im Mikrosekundenbereich Entscheidungen getroffen werden. Für jedes Datenpaket, was am Router eingeht, muss unter anderem anhand der Routingtabellen entschieden werden, wohin das Paket weiter gesendet werden muss. Das muss sehr schnell gehen und es spielen dabei auch noch ein paar andere Faktoren eine Rolle, die wir an dieser Stelle aber vernachlässigen können. Man stelle sich einfach vor, man müsse mehrere hunderttausend mal pro Sekunde in einer Tabelle mit knapp einer Million Zeilen die richtige finden. ====Wie sieht das konkret bei uns aus?==== Das Datennetz bzw. autonome System der Ruhr-Universität ist über zwei sogenannte AS-Border-Router mit zwei weiteren autonomen Systemen verbunden. Es handelt sich um das AS des DFN-Vereins und um das AS der TMR. Zum DFN-Verein unterhalten wir zwei Verbindungen, eine geht nach Frankfurt am Main, eine geht nach Essen. Jede Verbindung hat eine Kapazität von 20 Gbit/s (2x 10 Gbit/s gebündelt). Zur TMR unterhalten wir eine Verbindung mit einer Kapazität von 8 Gbit/s. In folgender Live-Ansicht sieht man die Auslastung der wichtigsten Leitungen unseres Netzes (Klick auf das Bild zeigt es in Originalgröße): [[https://nedi.noc.ruhr-uni-bochum.de/netweather/|{{https://nedi.noc.ruhr-uni-bochum.de/netweather/weather.png?700}}]] Im linken Bereich der Grafik erkennt man die beiden AS-Border-Router ''rub-asr-1'' und ''rub-asr-2'' mit den daran angeschlossenen Internet-Anbindungen "DFN-DUE" (nach Essen), "DFN-FRA" (nach Frankfurt) und "TMR". Es ist auch zu erkennen, dass die beiden AS-Border-Router mehrfach untereinander verbunden sind. Über diese Verbindungen werden - wie auch mit dem Internet - Routen über BGP ausgetauscht. Fährt man mit dem Mauszeiger über einzelne Verbindungen, bekommt man angezeigt, wieviel Traffic (Datenverkehr) in den letzten Stunden über die Leitung transportiert wurde (die "Interaktivität" kann durch anklicken des Bildes aktiviert werden). Die Grafik wird minütlich aktualisiert. Beide AS-Border-Router errechnen aus den von den Providern empfangenen Routen (wie gesagt pro Internet-Anbindung insgesamt knapp eine Million Routen) die optimale Route für jedes Netzwerk stets aktuell. Bei jeder Änderung, die von einem Provider empfangen wird, erfolgt eine Neuberechnung des optimalen Weges für entsprechende Ziele. Es wird hier selektiv neu berechnet, nicht jedes Mal die komplette Tabelle. Und es besteht auch die Möglichkeit, dass einer unserer Router entscheidet, dass das Ziel über den anderen Router besser zu erreichen ist. Daten werden dann zwischen den beiden AS-Border-Routern transportiert. Beispiel: Datenverkehr aus dem Data Center in Richtung Internet (jemand ausserhalb der RUB ruft z.B. www.rub.de auf) kommt auf ''rub-asr-2'' an. Dieser hat entschieden, dass der günstigste Weg über unsere TMR-Anbindung erfolgt. Das Paket wird an ''rub-asr-1'' weiter geleitet, denn an diesem befindet sich die Verbindung zu TMR. ====Die eingesetzte Hardware==== Bis Ende Juni 2020 wurde das Internet-Routing durch zwei Layer-3-Switche der Firma Cisco erledigt. Es handelte sich um Catalyst 6807-XL mit erweitertem Speicher-Ausbau, damit sie die hohe Anzahl an Routen verarbeiten können. Aufgrund von Kapazitätsproblemen - die Routingtabellen des Internets wurden einfach zu groß - mussten wir die Hardware jedoch erneuern. Am 30.06.2020 wurden diese beiden Layer-3-Switche daher durch zwei (richtige) Router vom Typ ASR1002-HX ersetzt. Details zum Router-Tausch sind [[https://noc.rub.de/web/blog/2020/border-router-upgrade|hier]] zu finden.