Routering en het besturingsvlak
GemiddeldLes 6 van 8 in Cursus Computernetwerken en internetprotocollen
Wat je leert
- Leg uit wat het besturingsvlak van de netwerklaag doet, modelleer een netwerk als een gewogen graaf en bereken routes met de laagste kosten met de twee klassieke families van routeringsalgoritmen.
- Leg het besturingsvlak uit en modelleer een netwerk als een graafOnderscheid routering van doorsturen, vergelijk besturing per router met logisch gecentraliseerde besturing en beschrijf routering als een zoektocht naar paden met de laagste kosten in een gewogen graaf.
- Bereken paden met de laagste kosten met het linkstatealgoritmeLeg uit hoe linkstate-informatie wordt verspreid, voer het algoritme van Dijkstra stap voor stap uit vanaf één router en zet het resultaat om in een doorstuurtabel.
- Bereken routes met het afstandsvectoralgoritmePas de Bellman–Ford-vergelijking toe, volg hoe buren afstandsvectoren uitwisselen totdat de routes stabiel zijn en bouw op basis van het resultaat een doorstuurtabel.
- Verwerk verbindingswijzigingen en vergelijk de twee benaderingenVolg hoe afstandsvectorroutering reageert wanneer een verbinding goedkoper of duurder wordt, leg tellen tot oneindig en poisoned reverse uit en vergelijk linkstateroutering met afstandsvectorroutering.
- Leg het besturingsvlak uit en modelleer een netwerk als een graaf
- Leg uit waarom internetroutering in autonome systemen is georganiseerd en hoe OSPF binnen zo'n systeem doorstuurtabellen opbouwt, ook in grote netwerken die in gebieden zijn verdeeld.
- Deel internetroutering in autonome systemen inLeg uit waarom routering is opgesplitst in routering binnen een netwerk en routering tussen netwerken, en beschrijf de rollen van autonome systemen, grensrouters en de twee soorten routeringsprotocollen.
- Leg uit hoe OSPF doorstuurtabellen opbouwtBeschrijf hoe OSPF-routers buren ontdekken, linkstateadvertenties via flooding verspreiden, kortste paden berekenen en reageren op een uitgevallen verbinding.
- Maak OSPF schaalbaar met gebiedenLeg uit hoe de verdeling van een groot netwerk in OSPF-gebieden flooding en berekeningen beperkt, en beschrijf de rollen van de backbone, gebiedsgrensrouters en AS-grensrouters.
- Deel internetroutering in autonome systemen in
- Leg uit hoe BGP informatie over bereikbaarheid tussen autonome systemen verspreidt, hoe routers kiezen uit de routes die ze leren en hoe zakelijk beleid en beveiliging de routering tussen netwerken bepalen.
- Adverteer routes tussen autonome systemen met BGPBeschrijf BGP-sessies, hoe een prefixadvertentie van AS naar AS reist en de rol van de attributen AS-PATH en NEXT-HOP en de berichten van BGP.
- Selecteer BGP-routes en installeer zePas de routeselectieregels van BGP toe, inclusief hot-potatoroutering, en leg uit hoe een router BGP en zijn intra-AS-protocol combineert om een doorstuurtabelregel op te bouwen.
- Pas routeringsbeleid toe tussen providers, klanten en peeringpartnersLeg uit hoe zakelijke relaties tussen netwerken bepalen welke routes een AS accepteert, verkiest en adverteert, en waarom beleid tussen netwerken belangrijker is dan binnen één netwerk.
- Herken BGP-problemen en beschrijf hoe netwerken zich daartegen beschermenLeg prefixkapingen en routelekken uit en beschrijf hoe filtering en validatie van routeoorsprong met RPKI de gevolgen ervan beperken.
- Adverteer routes tussen autonome systemen met BGP
- Beschrijf de architectuur van een softwaregedefinieerd netwerk en volg de berichten waarmee een controller informatie over het netwerk verkrijgt en stroomtabelregels in switches installeert.
- Beschrijf de architectuur van het SDN-besturingsvlakLeg de kenmerkende eigenschappen van softwaregedefinieerd netwerken uit, beschrijf de lagen van een SDN-controller en zijn interfaces naar netwerkapplicaties en netwerkapparaten, en geef aan waar SDN wordt gebruikt.
- Volg OpenFlow-berichten tussen de controller en de switchesBenoem de belangrijkste OpenFlow-berichten, beschrijf een stroomtabelregel en volg hoe een controller op een verbindingsstoring reageert door routes opnieuw te berekenen en switches bij te werken.
- Beschrijf de architectuur van het SDN-besturingsvlak
- Interpreteer de berichten van het Internet Control Message Protocol en gebruik ping en traceroute om bereikbaarheid te testen en de routers langs een pad te ontdekken.
- Interpreteer ICMP-berichtenBeschrijf het doel en formaat van ICMP, de belangrijkste berichttypen en codes in IPv4 en IPv6 en de regels voor het verzenden van ICMP-foutmeldingen.
- Test de bereikbaarheid met ping en tracerouteLeg uit hoe ping en traceroute ICMP gebruiken, lees uitvoer van traceroute en vermijd veelvoorkomende verkeerde interpretaties van de resultaten.
- Interpreteer ICMP-berichten
- Beschrijf de onderdelen van een netwerkbeheersysteem en gebruik SNMP voor bewaking en NETCONF met YANG voor modelgestuurde configuratie van veel apparaten.
- Bewaak apparaten met SNMP en MIB'sBeschrijf het netwerkbeheerkader, leg uit hoe SNMP MIB-objecten leest en wijzigt en bereken de verbindingsbenutting op basis van opgevraagde tellerwaarden.
- Configureer netwerken met NETCONF en YANGLeg uit hoe NETCONF configuratiewijzigingen als transacties toepast, hoe YANG-modellen apparaatgegevens beschrijven en hoe deze aanpak zich verhoudt tot SNMP.
- Bewaak apparaten met SNMP en MIB's
Besturingsvlak: uitleg
1Bereken routes met linkstatealgoritmen en afstandsvectoralgoritmen
Routering maakt van een verzameling verbindingen bruikbare eind-tot-eindpaden. Een router heeft een manier nodig om informatie over het netwerk te verkrijgen, een pad te kiezen en die keuze om te zetten in een lokale doorstuurregel. Linkstateroutering en afstandsvectorroutering lossen dit probleem op met verschillende informatie. Werk hun berekeningen door en volg daarna wat er gebeurt wanneer een verbinding verandert en de routers tijdelijk van mening verschillen.
1.1 Van een netwerkpad naar een volgende hop
Een router neemt voor elk binnenkomend datagram een lokale beslissing: welke uitgaande verbinding moet het vervolgens vervoeren? Het datavlak voert die opzoeking uit met behulp van de doorstuurtabel. Het besturingsvlak bepaalt de inhoud van de tabel met informatie over bestemmingen en het netwerk voorbij de router.
Twee manieren om de besturing te organiseren
Bij besturing per router draait op elke router routeringssoftware en wisselt elke router berichten uit met andere routers. OSPF en BGP gebruiken deze opzet. Bij logisch gecentraliseerde besturing verkrijgt netwerkbesturingssoftware een netwerkbreed beeld en gebruikt die een controller om doorstuurregels in apparaten te installeren. Dit is de SDN-aanpak. “Logisch gecentraliseerd” beschrijft de besturingsdienst zoals gebruikers die zien; de dienst kan op meerdere fysieke servers draaien.
Doorsturen is een snelle lokale bewerking, vaak geïmplementeerd in hardware. Routering reageert op een langzamere tijdschaal op veranderingen in verbindingen, kosten en beleid. Een datagram wacht niet bij elke hop op een nieuwe berekening van een eind-tot-eindroute. Het volgt de regels die al zijn geïnstalleerd.
Stel het netwerk voor als een gewogen graaf
In een graaf zijn knooppunten routers en kanten verbindingen. Een direct verbonden paar heeft verbindingskosten . Een ontbrekende directe verbinding heeft kosten . In de uitgewerkte grafen zijn de kosten symmetrisch: . De beheerder kiest wat de kosten voorstellen: verbindingssnelheid, vertraging, geld of een andere bruikbare maat.
Tel de kosten langs een pad op. Als A–B kosten 3 heeft en A–C en C–B elk kosten 1 hebben, heeft het directe pad kosten 3 en A–C–B kosten 2. A stuurt verkeer voor B naar C. Verbindingen tellen zou hier tot de verkeerde beslissing leiden; het aantal hops is alleen gelijk aan de padkosten als elke verbinding kosten 1 heeft.
Deel het algoritme in naar de gebruikte informatie
| Eigenschap | Linkstateroutering | Afstandsvectorroutering |
|---|---|---|
| Begininformatie | Volledige topologie en verbindingskosten | Kosten van aangesloten verbindingen en schattingen van buren |
| Berekening | Elke bron berekent paden in de graaf | Elke router vergelijkt herhaaldelijk routes via buren |
| Informatie-uitwisseling | Verbindingsbeschrijvingen worden via flooding verspreid | Geschatte kosten naar bestemmingen gaan naar buren |
Een globaal algoritme gebruikt volledige informatie over de topologie. Dat vereist niet één computer: OSPF voert in elke router onafhankelijk een globaal linkstatealgoritme uit. Een gedecentraliseerd algoritme bouwt zijn antwoord op via lokale uitwisselingen, zoals bij afstandsvectorroutering.
Andere indelingen beschrijven wanneer routes veranderen. Statische routes veranderen langzaam, vaak door handmatige aanpassingen. Dynamische protocollen reageren op veranderingen in het netwerk. Belastingsafhankelijke kosten volgen de actuele congestie; belastingsonafhankelijke kosten niet. OSPF en BGP zijn dynamische protocollen waarvan de gebruikelijke routemaatstaven de belasting niet van moment tot moment volgen.
Verbind routering met doorsturen
Een algoritme is de berekening; een protocol levert berichtformaten, timers en uitwisselingsregels. Het algoritme van Dijkstra is een berekening. OSPF is een protocol dat de invoer daarvoor levert.
De uiteindelijke doorstuurregel koppelt een bestemmingsprefix aan een uitgaande verbinding. Elke router kiest zijn eigen volgende hop, zodat het volledige pad ontstaat uit de tabellen van de routers. Tijdens convergentie kunnen inconsistente tabellen lussen veroorzaken; TTL zorgt er uiteindelijk voor dat een IPv4-datagram in een lus wordt verwijderd. Tussen organisaties moet een goede route ook aan het beleid voldoen: een beheerder kan een goedkoop pad afwijzen omdat het verkeer zou vervoeren dat de beheerder niet heeft afgesproken te vervoeren.
Belangrijkste punten
- Het besturingsvlak bouwt de doorstuurtoestand op; het datavlak past die toe op binnenkomende pakketten.
- De kosten van een pad zijn de som van de verbindingskosten, die niet het aantal hops hoeven voor te stellen.
- “Globaal” beschrijft de kennis van een algoritme, niet de fysieke locatie ervan.
- Consistente beslissingen over de volgende hop vormen samen het eind-tot-eindpad.
- Inter-AS-beleid kan zwaarder wegen dan padkosten.
1.2 Bouw een kortste-padenboom met het algoritme van Dijkstra
Bij linkstateroutering beschrijft elke router zijn aangesloten verbindingen en verspreidt die beschrijving via flooding door het netwerk. Zodra de databases overeenkomen, heeft elke router dezelfde graaf. Elke router voert het algoritme van Dijkstra uit met zichzelf als bron, zodat de gedeelde invoer bij elke router een andere boom met die router als wortel oplevert.
Houd voorlopige en definitieve kosten gescheiden
Voor bron zijn de laagste tot dan toe gevonden kosten naar en is de voorganger op dat pad. De verzameling bevat routers waarvan de laagste kosten definitief zijn. Begin met de bron in die verzameling, zijn directe buren met hun verbindingskosten en alle andere routers met oneindige kosten.
Kies bij elke iteratie de kleinste voorlopige kosten buiten en voeg de bijbehorende router, , toe aan de verzameling. Vergelijk voor elke buur die nog buiten de verzameling staat de bestaande schatting met een route via :
Als de tweede route goedkoper is, leg je vast als voorganger. Doordat verbindingskosten niet negatief zijn, kun je de kosten veilig definitief maken. Een waarde die alleen is bijgewerkt, blijft voorlopig totdat de bijbehorende router tot toetreedt.
Werk vanaf router A
Gebruik deze verbindingen: A–B 3, A–C 1, B–C 1, B–D 4, C–D 6, C–E 2, D–E 1, D–F 3 en E–F 5. Aanvankelijk heeft B kosten 3, C kosten 1 en hebben D, E en F oneindige kosten.
| Toegevoegde router | Updates voor routers die nog buiten de verzameling staan |
|---|---|
| C, kosten 1 | B wordt 2 via C; D wordt 7 via C; E wordt 3 via C |
| B, kosten 2 | D wordt 6 via B |
| E, kosten 3 | D wordt 4 via E; F wordt 8 via E |
| D, kosten 4 | F wordt 7 via D |
| F, kosten 7 | Er zijn geen routers meer over |
Door E toe te voegen verandert bijvoorbeeld de waarde van D, omdat kleiner is dan 6. De waarde van D is twee keer bijgewerkt voordat die definitief werd. Als je de eerste schatting van 7 als antwoord zou nemen, zou je beide verbeteringen missen.
Bepaal paden en eerste hops
Volg voorgangers achteruit: F ← D ← E ← C ← A. Draai die volgorde om voor A–C–E–D–F. De kosten zijn . De definitieve kosten vanaf A zijn B 2, C 1, D 4, E 3 en F 7.
Een doorstuurtabel bewaart de eerste hop, niet de voorganger van de bestemming. Elk pad in dit voorbeeld begint met A–C, dus is de volgende hop van A voor alle vijf bestemmingen C. De voorganger van F is D, maar D is niet de volgende hop van A.
Gelijke kosten, werk en veranderende belasting
Als twee kandidaten dezelfde kleinste kosten hebben, mag elk van beide als eerste definitief worden gemaakt. De laagste kosten blijven gelijk, al kan één gekozen pad verschillen. OSPF kan meerdere paden met gelijke kosten bewaren om de belasting te verdelen.
Het eenvoudige algoritme doorloopt kandidaten bij elk van zijn iteraties, wat een uitvoeringstijd van oplevert; een prioriteitswachtrij kan dit verbeteren. Linkstateflooding kost ook berichten, omdat gewijzigde verbindingsinformatie elke router binnen het bereik van de flooding moet bereiken.
Belastingsafhankelijke kosten kunnen terugkoppeling veroorzaken. Alle routers zien een licht belast pad, verplaatsen verkeer daarnaartoe en maken het duur; bij de volgende berekening gaat het verkeer terug. Belastingsonafhankelijke kosten vermijden deze specifieke terugkoppeling. Ook willekeurige berekeningstijdstippen kunnen gelijktijdig omschakelen verminderen; routers die op verschillende tijden beginnen, kunnen anders geleidelijk gelijk gaan lopen.
Belangrijkste punten
- Maak de kleinste voorlopige kosten definitief en werk daarna de nog niet definitieve buren bij.
- Voorlopige kosten kunnen meerdere keren dalen voordat ze definitief worden.
- Volg voorgangers achteruit om een pad te bepalen en neem vervolgens de eerste hop.
- Een gelijke stand bij de laagste kosten kan de gekozen paden veranderen zonder de laagste kosten te veranderen.
- De eenvoudige implementatie heeft een kwadratische uitvoeringstijd.
- Gelijktijdige reacties op belastingsafhankelijke kosten kunnen routes laten oscilleren.
1.3 Leer routes uit afstandsvectoren van buren
Een router kan bruikbare paden leren zonder de hele graaf te kennen. Bij afstandsvectorroutering kent hij de kosten van zijn aangesloten verbindingen en de laatste kostenschattingen die hij van elke buur heeft ontvangen. Met die schattingen bouwt hij zijn eigen afstandsvector op: een lijst met geschatte kosten naar alle bestemmingen.
Tel de eerste verbinding op bij de schatting van de buur
Voor een bestemming luidt de Bellman–Ford-vergelijking:
Probeer elke buur . Tel de kosten om die buur te bereiken op bij de kosten van de buur naar de bestemming en kies het kleinste totaal. De buur die het minimum oplevert, wordt de volgende hop. De kosten van een router naar zichzelf blijven 0; ze worden niet vervangen door een route via een buur.
Tijdens de uitwisseling gebruiken routers schattingen in plaats van de definitieve afstanden . Deze schattingen kunnen veranderen naarmate informatie zich verder door het netwerk verspreidt.
Begin, ontvang, bereken opnieuw en adverteer
Bij het opstarten noteert een router 0 naar zichzelf, de kosten van directe verbindingen naar buren en oneindig naar andere bestemmingen. Hij stuurt die vector naar zijn buren. Een nieuwe vector van een buur of een wijziging in een lokale verbinding leidt tot een nieuwe berekening. Als de eigen vector van de router verandert, adverteert hij de nieuwe vector; anders heeft hij geen gewijzigde schatting om door te geven.
Het proces is gedistribueerd, iteratief en asynchroon. Routers hoeven niet in gelijke rondes bij te werken. Informatie kan toch verre routers bereiken, omdat de herziene schatting van elke buur invoer wordt voor een andere berekening.
Bereken een voorbeeld met drie routers
De verbindingen A–B 4, B–C 1 en A–C 7 geven deze beginvectoren, gerangschikt naar bestemming A, B, C:
| Router | Beginafstandsvector |
|---|---|
| A | (0, 4, 7) |
| B | (4, 0, 1) |
| C | (7, 1, 0) |
Na ontvangst van de vector van B vergelijkt A zijn twee routes naar C:
A kiest B als volgende hop. C maakt de overeenkomstige berekening voor A en komt uit op 5 via B. Bij een volgende uitwisseling blijven de vectoren onveranderd. Bij vaste verbindingskosten en correcte werking zijn de routers geconvergeerd.
De doorstuurregels van A zijn “B → B, kosten 4” en “C → B, kosten 5”. A weet dat B kosten 1 naar C adverteert. A heeft niet het volledige pad van B of een tekening van de verbindingen voorbij B nodig.
Hoe RIP het protocol verzorgt
Het Routing Information Protocol (RIP) implementeert afstandsvectorroutering op basis van het aantal hops. Elke verbinding heeft kosten 1, het grootste bruikbare pad is 15 hops en 16 betekent onbereikbaar. RIP stuurt elke 30 seconden periodieke updates via UDP-poort 520. Een route die 180 seconden niet is ververst, verloopt.
Periodieke berichten horen bij het protocol; de regel voor gewijzigde vectoren van het onderliggende algoritme beschrijft wanneer er nieuwe informatie te verspreiden is. RIP gebruikt ook wijzigingsgestuurde updates om veranderingen sneller te verzenden. Als je deze niveaus verwart, kun je ten onrechte concluderen dat een stabiele RIP-router helemaal geen berichten verstuurt.
Afstandsvectorschattingen worden niet één keer berekend en daarna vastgezet. Een nieuwe opgave van een buur kan de volgende hop met de meeste voorkeur veranderen, ook als elke lokale verbinding gelijk blijft. Omgekeerd hoeft de ontvangst van een bericht de eigen vector van de router niet te veranderen als geen van de nieuwe totalen de geselecteerde routes verbetert of vervangt.
Belangrijkste punten
- Vergelijk voor elke buur de kosten van de eerste verbinding plus de schatting van de buur voor de bestemming.
- De kosten van een router naar zichzelf blijven 0.
- Een afstandsvector legt kosten naar bestemmingen vast zonder de volledige topologie te onthullen.
- Gewijzigde invoer leidt tot herhaalde berekeningen totdat de schattingen stabiel zijn.
- RIP voegt periodieke berichten en een maximale bruikbare afstand van 15 hops toe.
1.4 Volg een kostenwijziging en doorbreek een lus tussen twee routers
Een afstandsvectorupdate kan een pad beschrijven dat afhankelijk is van de router die de update ontvangt. Als die afhankelijkheid niet zichtbaar is, kunnen twee routers elk denken dat de ander een bruikbare route heeft. Daarom kan een stijging van verbindingskosten moeilijker te verspreiden zijn dan een daling.
Een goedkopere verbinding wordt snel bekend
Laat A–B kosten 2 hebben, B–C kosten 1 en A–C kosten 20. B bereikt A rechtstreeks met kosten 2; C bereikt A via B met kosten 3. Als A–B daalt naar 1, adverteert B 1 en verandert C zijn kosten naar 2. Wanneer C 2 terug adverteert, behoudt B zijn directe route. Na deze twee gewijzigde updates is de verbetering verwerkt.
Een dure verbinding legt verouderde informatie bloot
Begin nu opnieuw met kosten 2, 1 en 20 en verhoog A–B naar 40. B heeft nog de eerdere advertentie van C met waarde 3 naar A. B kiest C omdat kleiner is dan 40. C stuurt nog steeds naar B. Datagrammen voor A gaan nu heen en weer tussen B en C totdat hun TTL verloopt.
C verneemt de kosten 4 van B en berekent 5. B verneemt 5 en berekent 6. De schattingen blijven stijgen, hoewel geen van beide een onafhankelijk pad naar A beschrijft. Dit is tellen tot oneindig: slecht nieuws verspreidt zich via een reeks misleidend lage schattingen.
Hier doorbreekt een alternatief uiteindelijk de lus. Wanneer B 20 adverteert, vergelijkt C zijn directe kosten 20 met 21 via B en kiest C zijn directe verbinding. B komt daarna uit op 21 via C. Zonder bruikbaar alternatief of een eindige waarde voor oneindig kan het tellen veel langer doorgaan.
Maak de afhankelijkheid bekend met poisoned reverse
Bij poisoned reverse vertelt een router aan de buur die hij voor een bestemming gebruikt dat zijn afstand tot die bestemming oneindig is. Aanvankelijk gebruikt C B om A te bereiken, dus adverteert C oneindig aan B. B kan C daardoor niet meer voor een onafhankelijk alternatief aanzien.
Na de kostenstijging kiest B daarom zijn directe verbinding met kosten 40. C verneemt 40 en kiest zijn directe verbinding met kosten 20. C kan nu 20 aan B adverteren en B kiest kosten 21 via C. De geadverteerde waarde hangt af van de ontvanger: C kan zijn werkelijke kosten aan andere buren melden en de route richting B als oneindig adverteren wanneer B zijn volgende hop is.
Split horizon laat zo'n route uit de update weg in plaats van oneindig te adverteren. Poisoned reverse voorkomt deze afhankelijkheidslus tussen twee routers, maar langere lussen zijn nog mogelijk. Wijzigingsgestuurde updates versnellen de verspreiding van veranderingen. RIP definieert oneindig bovendien als 16 en begrenst daarmee zowel de teltijd als de bruikbare netwerkgrootte.
Vergelijk de twee routeringsfamilies
| Eigenschap | Linkstate | Afstandsvector |
|---|---|---|
| Berichten | Verbindingsbeschrijvingen worden binnen het bereik via flooding verspreid | Schattingen naar bestemmingen worden met buren uitgewisseld |
| Convergentie | Lokale berekening van kortste paden na database-updates | Herhaalde uitwisselingen; slecht nieuws kan zich langzaam verspreiden |
| Foutieve informatie | Een router kan zijn aangesloten verbindingen verkeerd opgeven | Een router kan ten onrechte lage kosten naar veel bestemmingen opgeven |
Een volledige verspreidingsronde bij linkstateroutering vergt een aantal berichten in de orde van voor routers en verbindingen. De eenvoudige lokale berekening is kwadratisch. Het aantal berichten bij afstandsvectorroutering hangt af van hoeveel opeenvolgende schattingen veranderen; communicatie met alleen buren garandeert geen snelle convergentie.
OSPF en IS-IS gebruiken linkstateroutering. RIP gebruikt afstandsvectoren. BGP is een verwant padvectorprotocol: de geadverteerde reeks AS'en maakt afhankelijkheden zichtbaar en laat routers paden met hun eigen AS-nummer verwerpen.
Belangrijkste punten
- Een verouderde schatting van een buur kan een route verbergen die via de ontvangende router terugloopt.
- Tellen tot oneindig is de herhaalde groei van onderling afhankelijke schattingen.
- Poisoned reverse adverteert oneindig aan de volgende hop voor die bestemming.
- Poisoned reverse blokkeert lussen tussen twee routers; langere lussen blijven mogelijk.
- Linkstateroutering verspreidt topologie; afstandsvectorroutering verspreidt schattingen naar bestemmingen.
- Een onjuiste afstandsvectoropgave kan zich tot ver voorbij de defecte router verspreiden.
2Routeer binnen een autonoom systeem met OSPF
Een beheerder kan kiezen hoe routering binnen zijn eigen netwerk werkt, maar moet ook verkeer met andere beheerders uitwisselen. Autonome systemen vormen die grens. Binnen één systeem verspreidt OSPF verbindingsinformatie en berekent het paden met de laagste kosten. Buurrelaties en gebieden maken dat proces beheersbaar wanneer een netwerk groeit, terwijl grensrouters de interne paden verbinden met bestemmingen elders.
2.1 Deel routering op in netwerken met een eigen beleid
Het internet is te groot en wordt te onafhankelijk beheerd om elke router als een knooppunt in één plat routeringssysteem te behandelen. Elke organisatie moet haar eigen interne netwerk kunnen beheren en tegelijk bruikbare routes naar andere organisaties bieden. Autonome systemen maken die verdeling mogelijk.
Bepaal de bestuurlijke grens
Een autonoom systeem, of AS, is een groep routers onder één beheer die naar buiten toe een samenhangend routeringsbeleid voert. Openbare AS-nummers, of ASN's, identificeren deze systemen wereldwijd. Regionale internetregisters verdelen AS-nummerreeksen. De oorspronkelijke nummerruimte was 16 bits, tot en met 65.535; moderne ASN's gebruiken 32 bits.
Een AS is een routeringsdomein, terwijl een internetprovider een bedrijf is. Een universiteit of contentaanbieder kan een AS beheren en één internetprovider kan er meerdere beheren. Als je deze termen als uitwisselbaar beschouwt, blijven de werkelijke beleidsgrenzen verborgen.
Gebruik verschillende protocollen voor verschillende taken
| Routeringstaak | Belangrijkste vraag | Typische protocollen |
|---|---|---|
| Intra-AS-routering | Hoe bereik ik een bestemming binnen ons netwerk? | OSPF, IS-IS, RIP, EIGRP |
| Inter-AS-routering | Welk aangrenzend netwerk biedt een aanvaardbare route? | BGP |
Een intern routeringsprotocol (IGP) levert interne routes. Binnen een routeringsdomein gebruiken routers een gemeenschappelijk IGP, zodat ze de informatie kunnen uitwisselen die het nodig heeft. Verschillende AS'en kunnen verschillende IGP's kiezen. Een provider die IS-IS gebruikt, kan verbinding maken met een universiteit die OSPF gebruikt, omdat hun externe routeringsuitwisseling BGP gebruikt.
De hiërarchie dient twee doelen. Ze vermindert de hoeveelheid wereldwijde details die interne routers moeten verwerken en behoudt de bestuurlijke autonomie. Een lokale verbindingswijziging hoeft niet de volledige interne topologie aan elk ander AS bloot te leggen.
Combineer een uitgangskeuze met een intern pad
Een grensrouter maakt verbinding met een ander AS. Voor een externe bestemming bepaalt BGP een bruikbare route en het grensrouteradres van de volgende hop. Het interne protocol levert het pad naar dat adres. Samen leveren deze beslissingen de doorstuurregel voor een binnenkomend pakket op.
Stel dat router R leert dat 198.51.100.0/24 bereikbaar is via grensrouter G. OSPF geeft aan dat het pad van R naar G via buur H begint. De doorstuurregel van R voor de externe prefix gebruikt de verbinding naar H. G is de uitgang van het AS, terwijl H de directe volgende hop van R is; die rollen hoeven niet bij dezelfde router te liggen.
Herken wanneer één uitgang genoeg is
Een kleine klant met één externe verbinding heeft geen keuze uit uitgangen. Een standaardroute voor IPv4, 0.0.0.0/0, kan extern verkeer naar die verbinding sturen. Door elke internetroute te leren ontstaat geen alternatieve uitgang.
Bij meerdere grensrouters is informatie over bereikbaarheid belangrijk: één grensrouter kan een prefix aanbieden die een andere niet aanbiedt, of beleid kan één provider bevoordelen. BGP verspreidt de routekeuzes; het IGP levert nog steeds de route waarlangs pakketten de gekozen uitgang bereiken.
Binnen één AS kan één beheerder verbindingskosten kiezen om interne prestatiedoelen te halen. Tussen AS'en concurreren kosten met afspraken over betaalde transit, peeringpartners en welk verkeer een beheerder vervoert. Daarom komt bij de keuze van een internetroute meer kijken dan een kortste-padberekening uitbreiden over de volgende bestuurlijke grens.
Belangrijkste punten
- Een AS is een routeringsdomein met één extern beleid, niet noodzakelijk een internetprovider.
- Een IGP vindt interne paden; BGP wisselt routes uit over AS-grenzen heen.
- Een externe doorstuurregel combineert een BGP-route met een intern pad naar de volgende hop van die route.
- Een klant met één uitgang kan een standaardroute gebruiken.
2.2 Hoe OSPF verbindingsinformatie omzet in routes
Open Shortest Path First (OSPF) is een linkstate-IGP. Elke router leert de topologie binnen zijn gebied, voert het algoritme van Dijkstra uit met zichzelf als bron en leidt routes naar subnetten af. OSPFv2 is voor IPv4; OSPFv3 is ontworpen voor IPv6.
Kies kosten en ontdek buren
De beheerder stelt verbindingsgewichten in. Als alle gewichten gelijk zijn aan 1, ontstaan routes met de minste hops. Een voorbeeld van een regel met omgekeerde snelheid en een referentie van 10 Gbit/s is
Die geeft gewichten 1, 10 en 100 voor verbindingen van 10 Gbit/s, 1 Gbit/s en 100 Mbit/s. Gewicht is een ingestelde routeringsmaat, geen afstand in kilometers.
Hello-pakketten ontdekken buren en houden buurrelaties in stand. Een veelgebruikte instelling op een lokaal netwerk verstuurt elke 10 seconden Hello's en gebruikt een doodinterval van 40 seconden. Eén Hello missen is daarom iets anders dan de buur als uitgevallen beschouwen. Aangrenzende routers synchroniseren databases met Database Description-pakketten, Link State Requests, Link State Updates en Link State Acknowledgments. Routers met gesynchroniseerde databases vormen een adjacentie.
Verspreid actuele verbindingsbeschrijvingen via flooding
Een linkstateadvertentie (LSA) beschrijft routeringsinformatie. Een router-LSA legt de verbindingen en kosten van een router vast. LSA's reizen in Link State Update-pakketten; een LSA is de geadverteerde informatie, niet de naam van elk OSPF-pakket.
Veranderde verbindingen leiden tot nieuwe advertenties. Routers verversen ook hun eigen LSA's minstens elke 30 minuten. Een LSA die de maximale leeftijd van één uur bereikt, wordt verwijderd. Met informatie over de volgorde en de leeftijd kunnen routers actuele beschrijvingen van oude onderscheiden.
OSPF wordt rechtstreeks in IP vervoerd met protocolnummer 89. Het verzorgt zelf ontvangstbevestigingen en hertransmissies. Op broadcastnetwerken bereikt 224.0.0.5 alle OSPF-routers en 224.0.0.6 de aangewezen routers.
Verminder het aantal adjacenties op een lokaal netwerk
Een lokaal netwerk kiest een aangewezen router (DR) en een reserve voor de aangewezen router (BDR). Andere routers vormen volledige adjacenties met die twee, in plaats van dat elk paar adjacent wordt. De DR adverteert het gedeelde lokale netwerk in een netwerk-LSA.
Voor zes routers zou een volledig vermaasd netwerk adjacenties vereisen. Vier gewone routers verbinden elk logisch met de DR en BDR, plus één DR–BDR-adjacentie: . Buren kunnen elkaar horen zonder allemaal volledig adjacent te worden.
Bereken opnieuw na een verbindingsstoring
Neem de verbindingen A–B 3, A–C 1, B–C 1, B–D 4, C–D 6, C–E 2, D–E 1, D–F 3 en E–F 5. A bereikt aanvankelijk E met kosten 3, D met 4 en F met 7 via C en E.
Wanneer C–E uitvalt, verspreiden C en E via flooding nieuwe router-LSA's waarin de verbinding is verwijderd. Na herberekening zijn de kosten van A naar B 2, D 6, E 7 en F 9. De paden naar D en F gebruiken nu C–B–D. De eerste hop van A blijft C: een veranderd volledig pad vereist geen veranderde eerste doorstuurhop.
OSPF ondersteunt geauthenticeerde routeringsberichten en routering via meerdere paden met gelijke kosten (ECMP). Cryptografische authenticatie is sterker dan een wachtwoord in klare tekst; ze controleert de geautoriseerde oorsprong en integriteit van berichten. Met ECMP kan een router meerdere paden met gelijke kosten bewaren. Deze functies werken met linkstate-informatie, niet met uitgewisselde tabellen met geschatte afstanden naar bestemmingen.
Belangrijkste punten
- OSPF verspreidt LSA's via flooding en elke router berekent zijn eigen routes.
- Ingestelde gewichten bepalen paden met de laagste kosten.
- Hello's houden buurrelaties in stand; databasesynchronisatie brengt adjacenties tot stand.
- OSPF gebruikt IP-protocol 89 en verzorgt zijn eigen betrouwbare flooding.
- Een DR en BDR verminderen het aantal volledige adjacenties op een lokaal broadcastnetwerk.
- Na een storing kunnen het pad en de kosten veranderen terwijl de eerste hop gelijk blijft.
- OSPF kan berichten authenticeren en paden met gelijke kosten bewaren.
2.3 Houd gedetailleerde topologie binnen OSPF-gebieden
Een router in een groot AS hoeft niet elke interne verbinding als onderdeel van één gedetailleerde graaf te verwerken. OSPF-gebieden verdelen de linkstatedatabase en het werk voor de kortste paden. Routers bewaren lokale details en leren routes die bestemmingen buiten hun eigen gebied beschrijven.
Verbind gebieden via de backbone
De backbone is gebied 0, ook geschreven als 0.0.0.0. Andere gebieden zijn ermee verbonden. Verkeer tussen twee gebieden buiten de backbone gaat naar de backbone en vervolgens naar het bestemmingsgebied.
Een gebiedsgrensrouter (ABR) verbindt gebieden, waaronder de backbone. De router houdt voor elk aangesloten gebied een afzonderlijke database bij en adverteert routes tussen die gebieden. Informatie over een subnet elders kan de grens over zonder alle routers en verbindingen van het andere gebied bloot te leggen. Samenvatting kan ook geschikte prefixen combineren; daarvoor hoeven niet alle subnetten elders in één aggregaat op te gaan.
Een AS-grensrouter (ASBR) brengt routes van buiten het OSPF-domein in, zoals routes die van een ander AS zijn geleerd. Een ABR overschrijdt een gebiedsgrens; een ASBR brengt externe routeringsinformatie in. Eén apparaat kan beide rollen vervullen.
Koppel advertenties aan hun doel
| LSA-type | Informatie | Oorspronkelijke verzender |
|---|---|---|
| 1, router-LSA | De verbindingen van een router binnen een gebied | Elke router |
| 2, netwerk-LSA | Een gedeeld broadcastnetwerk | De DR |
| 3, samenvattende LSA | Een subnet dat in een ander gebied bereikbaar is | Een ABR |
| 4, samenvattende LSA | Hoe een ASBR te bereiken is | Een ABR |
| 5, AS-externe LSA | Een bestemming van buiten het OSPF-domein | Een ASBR |
Typen 1 en 2 beschrijven de gedetailleerde graaf van het gebied. Typen 3 en 4 vervoeren informatie over bereikbaarheid tussen gebieden. Type 5 verspreidt zich normaal gesproken door het AS, waarbij speciale gebiedstypen externe advertenties beperken.
Volg een pakket tussen gebieden
Het pakket van een host begint in gebied 7 en is bestemd voor gebied 9. Het volgt eerst routes binnen gebied 7 naar een ABR, doorkruist gebied 0 naar een ABR die met gebied 9 is verbonden en volgt daarna routes binnen gebied 9. Dit is een hiërarchie binnen één AS; door een gebiedsgrens te overschrijden wordt het pakket geen inter-AS-verkeer.
Een interne router heeft alle interfaces in één gebied. Een backbonerouter heeft minstens één interface in gebied 0. Een ABR is ook een backbonerouter, dus de rolnamen sluiten elkaar niet uit.
Begrijp wat een lokale storing elders verandert
Door ongeveer 400 routers in vier gebieden van ongeveer 100 te verdelen, kan de gedetailleerde graaf van elke router veel kleiner worden, terwijl routes tussen gebieden worden toegevoegd. De precieze databasegrootte hangt ook af van grensrouters en geadverteerde netwerken.
Als een verbinding binnen één gebied herhaaldelijk uitvalt, blijven de gedetailleerde LSA's en de volledige herberekening van kortste paden binnen dat gebied. Als de wijziging ook de geadverteerde kosten of bereikbaarheid van een bestemming verandert, stuurt de ABR gewijzigde samenvattingen. Routers elders werken de betrokken routes tussen gebieden bij. Gebieden beperken dus de details en berekeningen die zich verspreiden; ze verbergen niet elk effect van een storing.
Minder detail heeft een prijs. Een route tussen gebieden volgt de gebiedshiërarchie en kan verschillen van de route met de laagste kosten in een platte graaf van het hele AS. De beheerder krijgt kleinere databases en beter begrensde wijzigingen, maar levert enige vrijheid in de padkeuze in.
Belangrijkste punten
- Gebied 0 vervoert verkeer tussen gebieden buiten de backbone.
- ABR's wisselen informatie over bereikbaarheid tussen gebieden uit; ASBR's brengen externe routes in.
- Router- en netwerk-LSA's beschrijven de gedetailleerde graaf van een gebied.
- Gebieden begrenzen gedetailleerde flooding, terwijl gewijzigde samenvattingen andere gebieden kunnen beïnvloeden.
- Een OSPF-gebied is een onderverdeling van een AS.
3Routeer tussen netwerken met BGP
Een route over het internet doorkruist netwerken met verschillende eigenaren en prioriteiten. BGP verspreidt beloften over bereikbaarheid en laat elke beheerder beslissen welke beloften hij accepteert en doorgeeft. Volg een advertentie, vergelijk concurrerende routes in volgorde en koppel de winnende route aan een doorstuurinterface. Zakelijke relaties verklaren veel keuzes; filtering en validatie van routeoorsprong helpen fouten en aanvallen te begrenzen.
3.1 Volg een BGP-advertentie door autonome systemen
BGP-4 wisselt informatie over de bereikbaarheid van bestemmingsprefixen uit. Een advertentie geeft aan dat het aankondigende netwerk een route naar die prefix aanbiedt. Andere netwerken kunnen die volgens hun beleid accepteren, met alternatieven vergelijken of weigeren.
Breng een sessie tot stand
BGP-routers wisselen berichten uit via een langdurige TCP-verbinding op poort 179. eBGP verbindt BGP-routers in verschillende AS'en; iBGP verbindt BGP-routers in hetzelfde AS. Interne sessies verspreiden externe bereikbaarheidsinformatie binnen het AS en hoeven niet met directe fysieke verbindingen overeen te komen.
Het basisontwerp van iBGP gebruikt een volledig vermaasd netwerk tussen BGP-routers. Grotere netwerken kunnen routereflectoren gebruiken om het aantal sessies te verminderen. iBGP vervangt het IGP niet: het IGP levert nog steeds de interne paden die nodig zijn om BGP-volgende hops te bereiken.
Voeg het AS-nummer toe wanneer een route naar buiten gaat
AS 64503 kondigt 203.0.113.0/24 als oorsprong aan. Zijn advertentie aan AS 64502 heeft AS-PATH “64503”. AS 64502 verspreidt de route intern via iBGP en adverteert die vervolgens aan AS 64501 met AS-PATH “64502 64503”. Bij externe verspreiding wordt het nummer van het adverterende AS vooraan toegevoegd; gewone interne verspreiding voegt geen extra exemplaar van dat nummer toe.
Een BGP-route koppelt de prefix aan attributen. AS-PATH legt de reeks AS'en vast, met het meest recente eerst. NEXT-HOP geeft het routeradres aan waarheen verkeer moet worden gestuurd, normaal gesproken een interface op de aangrenzende grensrouter. Een interne BGP-router gebruikt het IGP om een pad naar dat adres te bepalen.
Verwerp een lus op AS-niveau
Een BGP-router verwerpt een route waarvan AS-PATH zijn eigen AS-nummer bevat. Als AS 64501 “64502 64501 64503” ontvangt, zou acceptatie verkeer langs een AS-reeks sturen die terugkeert naar 64501. Doordat BGP deze afhankelijkheid meedraagt, is het een padvectorprotocol en vermijdt het het probleem van tellen tot oneindig van gewone afstandsvectorroutering.
Een AS-pad is geen lijst van elke router op het pad van het pakket. Twee AS-hops kunnen veel fysieke verbindingen omvatten en beleid kan een langer AS-pad selecteren. Alleen de lengte zegt weinig over de gemeten vertraging.
Interpreteer de basisberichten
| Bericht | Taak |
|---|---|
| OPEN | Een sessie starten en instellingen uitwisselen, waaronder de houdtijd |
| UPDATE | Bereikbaarheid aankondigen of eerder aangekondigde routes intrekken |
| KEEPALIVE | Een sessie zonder ander verkeer actief houden |
| NOTIFICATION | Een fout melden en de sessie sluiten |
De standaard stelt een houdtijd van 90 seconden en elke 30 seconden een keepalive voor. Onderhandelde instellingen kunnen verschillen. Een BGP-router trekt routes in die via een sessie zijn geleerd wanneer die sessie uitvalt; een TCP-verbinding openhouden is iets anders dan bewijzen dat elke geadverteerde bestemming werkt.
Na de eerste uitwisseling stuurt BGP incrementele wijzigingen in plaats van periodiek de volledige tabel te verzenden. Frequentiebeperking kan herhaalde aankondigingen voor één prefix verminderen; de standaard stelt 30 seconden tussen zulke eBGP-advertenties voor.
TCP zorgt voor aflevering in volgorde tussen de twee BGP-routers. De eigen attributen, beleidsregels en updateverwerking van BGP bepalen welke routes worden bewaard en verspreid. Betrouwbaar transport op zichzelf bewijst niet dat een buur gerechtigd is de geadverteerde prefix als oorsprong aan te kondigen.
Belangrijkste punten
- BGP adverteert prefixen en attributen via TCP-poort 179.
- eBGP overschrijdt AS-grenzen; iBGP verspreidt routes binnen een AS.
- Een externe advertentie voegt het adverterende AS-nummer vooraan toe.
- Een BGP-router verwerpt een AS-PATH dat zijn eigen AS-nummer bevat.
- Na de eerste tabeluitwisseling bevatten updates wijzigingen.
3.2 Kies een BGP-route voordat je de uitgangsinterface bepaalt
Meerdere grensrouters kunnen een route naar dezelfde prefix aanbieden. Een BGP-router past eerst het importbeleid toe en vergelijkt daarna geaccepteerde, bruikbare routes in een vastgelegde volgorde. Hij stopt bij het eerste doorslaggevende verschil; een later voordeel kan een eerdere voorkeur niet ongedaan maken.
Vergelijk attributen in volgorde
- Geef de voorkeur aan de hoogste LOCAL_PREF, ingesteld door de lokale beheerder.
- Geef de voorkeur aan het kortste AS-PATH.
- Geef de voorkeur aan de laagste ORIGIN-waarde: IGP, dan EGP, dan INCOMPLETE.
- Geef de voorkeur aan de laagste MED tussen routes uit hetzelfde aangrenzende AS.
- Geef de voorkeur aan een via eBGP geleerde route boven een via iBGP geleerde route.
- Geef de voorkeur aan de laagste IGP-kosten naar de NEXT-HOP.
- Geef de voorkeur aan de laagste adverterende BGP-identificatie als eerdere vergelijkingen gelijk eindigen.
Routerimplementaties kunnen stappen toevoegen, zoals een leveranciersspecifiek lokaal gewicht. LOCAL_PREF wordt binnen het AS verspreid en blijft daar. Met MED kan een aangrenzend AS een gewenst toegangspunt voorstellen; MED-waarden van verschillende aangrenzende AS'en worden volgens de gebruikelijke regel niet vergeleken.
Vergelijk twee uitgangen
R in AS 64501 leert via iBGP twee routes naar 203.0.113.0/24. G1 biedt AS-PATH “64502 64503” met IGP-kosten 3; G2 biedt “64504 64503” met IGP-kosten 5. Beide hebben LOCAL_PREF 100 en een gelijke ORIGIN. De paden bevatten elk twee AS'en. MED kiest niet tussen deze verschillende aangrenzende AS'en en beide routes zijn interne advertenties.
De IGP-kosten beslissen dus: R kiest G1 omdat . Dit is hot-potatoroutering: stuur verkeer via de intern goedkoopste uitgang bij verder gelijke routes.
Als routes via AS 64504 LOCAL_PREF 200 krijgen, wint G2 direct. De hogere interne kosten zijn dan niet meer van belang. Bij gelijke LOCAL_PREF zou een pad met alleen “64503” van beide paden met twee AS'en winnen voordat hot-potatoroutering aan bod komt.
Bepaal hoe de gekozen volgende hop wordt bereikt
BGP heeft een route via G1 gekozen, maar R heeft mogelijk geen directe verbinding met G1. OSPF levert het interne pad met de laagste kosten naar dat adres van de volgende hop. Als het pad begint op interface I, wordt de doorstuurregel “203.0.113.0/24 → I”. De beslissing vereist beide protocollen: BGP selecteert externe bereikbaarheid en het IGP bepaalt de interne aflevering daarheen.
Verschillende interne routers kunnen verschillende kosten naar G1 en G2 hebben, zodat verder gelijke BGP-keuzes ertoe kunnen leiden dat ze verschillende uitgangen gebruiken. Onafhankelijk beleid aan de andere kant kan er ook voor zorgen dat het terugpad van pakketten verschilt van het heenpad. Internetroutering is vaak asymmetrisch.
Pas dezelfde selectie toe op anycast
Bij IP-anycast adverteren meerdere dienstlocaties dezelfde prefix. Routers kiezen tussen de advertenties via de gewone BGP-selectie. Een client bereikt de instantie die de voorkeur krijgt op basis van routeringsbeleid, AS-pad en interne kosten. Dat hoeft niet de geografisch dichtstbijzijnde instantie te zijn.
Dit werkt goed voor korte uitwisselingen zoals DNS-query's. Een routeringswijziging tijdens een lange TCP-verbinding kan latere pakketten naar een andere instantie sturen die de toestand van de verbinding niet heeft.
Belangrijkste punten
- BGP stopt bij de eerste doorslaggevende vergelijking.
- LOCAL_PREF weegt zwaarder dan de lengte van AS-PATH.
- MED vergelijkt normaal gesproken toegangspunten die door hetzelfde aangrenzende AS worden aangeboden.
- Hot-potatoroutering gebruikt interne kosten pas nadat eerdere voorkeuren gelijk zijn gebleken.
- Het IGP bepaalt de uitgaande interface voor een geselecteerde BGP-volgende hop.
- Nabijheid bij anycast wordt bepaald door routering, niet door geografie.
3.3 Gebruik zakelijke relaties om transit te regelen
Een route adverteren is een uitnodiging om verkeer in die richting te sturen. Het exportbeleid van een beheerder bepaalt daarom welk verkeer het netwerk aanbiedt te vervoeren. Relaties tussen klanten, providers en peeringpartners verklaren de gebruikelijke regels.
Onderscheid transit van peering
Een klant betaalt een provider voor transit van en naar de rest van het internet. Twee peeringpartners wisselen verkeer uit voor zichzelf en hun klanten, vaak zonder onderlinge betaling. Netwerken gaan vaak peeringrelaties aan bij een internetknooppunt (IXP).
Peering biedt meestal geen route naar alles wat de peeringpartner via zijn eigen providers kan bereiken. Die bredere dienst is transit. Een peeringrelatie beschrijft een afspraak over verkeer, niet alleen een fysieke kabel tussen routers.
Scheid import- en exportbeslissingen
Importbeleid bepaalt welke ontvangen advertenties worden geaccepteerd en welke voorkeur ze krijgen. Exportbeleid bepaalt welke routes aan elke buur worden geadverteerd. Een route kan worden geaccepteerd en lokaal gebruikt zonder aan elke andere buur te worden aangeboden.
De gebruikelijke importvoorkeur gaat eerst uit naar routes van klanten, dan naar routes van peeringpartners en daarna naar routes van providers. LOCAL_PREF kan die volgorde vastleggen. Klantverkeer levert inkomsten op, verkeer van peeringpartners vermijdt meestal transitkosten en verkeer via providers brengt transitkosten met zich mee. Deze voorkeur kan zwaarder wegen dan de lengte van AS-PATH.
Pas de gebruikelijke exportregels toe
| Route geleerd van | Adverteren aan klanten | Adverteren aan peeringpartners | Adverteren aan providers |
|---|---|---|---|
| Klant | Ja | Ja | Ja |
| Peeringpartner | Ja | Nee | Nee |
| Provider | Ja | Nee | Nee |
Een AS adverteert ook zijn eigen bestemmingen volgens zijn afspraken. De tabel beschrijft het gebruikelijke commerciële patroon; beheerders voeren beleid uit met expliciete filters en voorkeuren.
Een klantroute breed adverteren trekt verkeer aan richting de betalende klant. Door routes van peeringpartners en providers alleen aan klanten aan te bieden, voorkom je dat je onbetaalde transit tussen externe netwerken aanbiedt. De relevante richting is waar de route is geleerd en aan wie die wordt geadverteerd, niet in welke richting een afzonderlijk pakket toevallig reist.
Volg een klant met multihoming
Klant X, AS 64510, heeft providers B en C. X kondigt zijn eigen prefix bij beide aan voor bereikbaarheid en veerkracht. Het accepteert routes van beide, maar neemt een van B geleerde route niet op in advertenties aan C. Het neemt ook routes van C niet op in advertenties aan B. Anders zou de ene provider verkeer via X kunnen sturen naar bestemmingen achter de andere provider.
Als voorbeeld met peeringpartners: A en B zijn peeringpartners en W is klant van A. B kan de route “A W” gebruiken en die naar zijn klanten exporteren. B houdt die van een peeringpartner geleerde route achter voor een andere peeringpartner C. Export naar C zou transit tussen peeringpartners via B aanbieden.
Binnen één AS kan één beheerder de interne kosten optimaliseren. Tussen AS'en bepalen onafhankelijke beheerders de prijs, verkeersverplichtingen en aanvaardbare wederpartijen. Een ontbrekende advertentie kan een bewuste weigering zijn om verkeer te vervoeren, ook als er een fysiek pad bestaat.
Belangrijkste punten
- Importbeleid filtert en rangschikt ontvangen routes; exportbeleid regelt advertenties.
- Transit biedt een bredere bereikbaarheid dan gewone peering.
- Van klanten geleerde routes worden meestal naar alle typen buren geëxporteerd.
- Van peeringpartners en providers geleerde routes worden meestal alleen naar klanten geëxporteerd.
3.4 Beperk kapingen en lekken zonder elke aankondiging te vertrouwen
Gewone BGP-advertenties bewijzen niet wie een prefix bezit en authenticeren niet het volledige AS-PATH. Een onjuiste aankondiging kan zich door veel netwerken verspreiden tenzij beleid en validatie die tegenhouden. Twee belangrijke problemen zijn prefixkapingen en routelekken.
Herken wat er misgaat
Bij een prefixkaping wordt een ongeautoriseerde prefix of een specifieker deel van de prefix van een ander aangekondigd. Routers die de route accepteren, kunnen verkeer naar de verkeerde oorsprong sturen. Zodra routes voor verschillende prefixlengtes zijn geïnstalleerd, gebruikt doorsturen de langste overeenkomende prefix. Een /24-route binnen een /22 wint voor overeenkomende adressen, zelfs als de /22 een korter AS-PATH heeft. BGP-vergelijkingen tussen routes naar één prefix en doorstuurvergelijkingen tussen verschillende prefixen zijn afzonderlijke beslissingen.
Een routelek exporteert een route voorbij de beoogde beleidsgrens. Een klant geeft bijvoorbeeld van een provider geleerde routes door aan een andere provider en wordt onbedoeld een transitnetwerk. De oorsprong van de prefix kan legitiem zijn terwijl de verspreiding onjuist is.
Leer van een echt incident
Op 24 februari 2008 kondigde Pakistan Telecom, AS 17557, 208.65.153.0/24 aan als onderdeel van een binnenlandse blokkade van YouTube. Zijn provider verspreidde die specifiekere route internationaal. Een groot deel van het verkeer voor die YouTube-adressen werd naar Pakistan getrokken.
Het breed zichtbare incident duurde van 18.47 tot 21.01 uur UTC, iets meer dan twee uur. YouTube kondigde de /24 zelf aan en daarna twee /25-prefixen terwijl het probeerde verkeer terug te krijgen. Het incident eindigde toen de provider de valse route introk. Een lokaal bedoelde wijziging was een internationaal bereikbaarheidsprobleem geworden doordat exportfiltering faalde.
Filter voordat een fout zich verspreidt
Een provider kan alleen de prefixen accepteren die een klant als oorsprong mag aankondigen. Een limiet voor het aantal prefixen kan een sessie stoppen die plotseling veel meer routes aankondigt dan afgesproken. Veel netwerken filteren ook IPv4-prefixen langer dan /24 en IPv6-prefixen langer dan /48. Zulke filters beperken welke advertenties zich verspreiden; een technisch specifiekere route heeft alleen effect waar die wordt geaccepteerd.
Controleer de geautoriseerde oorsprong met RPKI
Met de Resource Public Key Infrastructure (RPKI) kunnen adresbeheerders ondertekende autorisaties van routeoorsprong (ROA's) publiceren. Een ROA vermeldt het toegestane oorsprongs-ASN, een prefix en de maximaal toegestane prefixlengte.
Stel dat AS 64503 is geautoriseerd voor 203.0.113.0/24 met maximale lengte /24:
| Aankondiging | Status van validatie van routeoorsprong | Reden |
|---|---|---|
| 203.0.113.0/24, oorsprong 64503 | Geldig | Prefixlengte en oorsprong zijn geautoriseerd |
| 203.0.113.0/24, oorsprong 64510 | Ongeldig | Oorsprong is niet geautoriseerd |
| 203.0.113.128/25, oorsprong 64503 | Ongeldig | Prefix is langer dan toegestaan |
| 198.51.100.0/24, geen dekkende ROA | Niet gevonden | Er is geen dekkende autorisatie beschikbaar |
Als meerdere gevalideerde autorisaties een route dekken, maakt één autorisatie met overeenkomende oorsprong en lengte de route geldig. Bij dekkende autorisaties zonder overeenkomst is de route ongeldig. Netwerken kiezen hoe ze op deze statussen reageren; het verwerpen van ongeldige routes blokkeert veel ongeautoriseerde oorsprongen. “Niet gevonden” betekent dat een autorisatie ontbreekt, niet dat een verkeerde oorsprong is aangetoond.
Validatie van routeoorsprong controleert het laatste oorsprongs-ASN, niet elk transit-AS of de exportrelatie. Een vervalst pad dat eindigt met een geautoriseerde oorsprong kan daarom door deze controle komen, en een lek kan een geldige oorsprong behouden. BGPsec voegt mechanismen voor padondertekening toe, maar validatie van routeoorsprong, routefilters en bewaking blijven afzonderlijke verdedigingsmaatregelen.
Belangrijkste punten
- Door selectie op de langste overeenkomende prefix kan een geaccepteerde ongeautoriseerde specifiekere route verkeer aantrekken.
- Een lek kan een legitieme oorsprong voorbij de beoogde beleidsgrens verspreiden.
- Een ROA autoriseert een oorsprongs-ASN en een maximale prefixlengte.
- Geldig, ongeldig en niet gevonden zijn verschillende resultaten van validatie van routeoorsprong.
- Validatie van routeoorsprong valideert niet het volledige AS-PATH of het exportbeleid.
4Leg uit hoe een SDN-controller doorstuurtabellen opbouwt
Een routeringsbeslissing kan worden uitgevoerd in software buiten de switches die de pakketten doorsturen. Bij softwaregedefinieerd netwerken gebruiken applicaties het netwerkbeeld van een controller om te bepalen welke regels ze installeren. De controller geeft die regels door aan switches en meldt wijzigingen terug aan de applicaties. Door een uitgevallen verbinding te volgen, zie je hoe topologie-informatie, padberekening en updates van stroomtabellen samenhangen.
4.1 Verplaats besturingsbeslissingen naar applicaties en een controller
Softwaregedefinieerd netwerken (SDN) scheidt het doorsturen van pakketten van de software die het netwerkgedrag bepaalt. Switches passen stroomregels toe, terwijl applicaties een controller gebruiken om de netwerktoestand te lezen en de regels te installeren die ze nodig hebben. Deze opzet maakt de besturing programmeerbaar.
Herken de drie componenten
Switches in het datavlak sturen door op basis van matchcriteria en acties. Een verkeersstroom kan overeenkomen met velden uit meerdere lagen, waaronder Ethernet-adressen, IP-adressen en transportpoorten. Acties kunnen een pakket doorsturen, verwerpen, wijzigen of naar de controller sturen.
De controller houdt de netwerktoestand bij en communiceert met apparaten. Netwerkbesturingsapplicaties nemen beslissingen, zoals het berekenen van een route of het kiezen van een regel voor lastverdeling. Een routeringsapplicatie kan nog steeds het algoritme van Dijkstra gebruiken. SDN verandert de plaats en interfaces van de besturing zonder een nieuwe methode voor kortste paden te vereisen.
De kenmerkende eigenschappen werken samen: doorsturen op basis van verkeersstromen, gescheiden besturings- en datavlakken, besturingsfuncties buiten switches en softwareapplicaties die netwerkgedrag programmeren.
Volg de lagen van de controller
| Onderdeel van de controller | Belangrijkste taak |
|---|---|
| Communicatielaag | Opdrachten, gebeurtenissen en statistieken met apparaten uitwisselen |
| Beheer van de netwerkbrede toestand | Verbindingen, switches, hosts en geïnstalleerde stroomtoestand bijhouden |
| Applicatie-interface | Applicaties de toestand laten lezen, wijzigingen laten aanvragen en zich laten aanmelden voor gebeurtenissen |
De interface naar netwerkapparaten verbindt de controller met apparaten. OpenFlow is een bekend voorbeeld; beheerprotocollen zoals SNMP en NETCONF kunnen ook communicatie met apparaten ondersteunen. De interface naar netwerkapplicaties verbindt applicaties met de controller, vaak via een REST-API. De aanduidingen “noord” en “zuid” beschrijven softwarerollen, geen fysieke posities in een netwerkrek.
Onderscheid logische van fysieke centralisatie
Applicaties zien een samenhangende controllerdienst met een netwerkbreed beeld. Die dienst kan op één server of een gerepliceerd cluster draaien. Een cluster kan de belasting delen en doorgaan nadat één server is uitgevallen, mits het delen van de toestand en het overschakelen bij uitval goed werken. Logische centralisatie vereist niet één fysieke machine.
Een controller op één server is een enkel uitvalpunt voor zijn besturingsdienst. Replicatie verkleint dat risico, maar de controller blijft een cruciaal onderdeel van het netwerk. Applicaties zijn afhankelijk van een nauwkeurig beeld van de topologie om bruikbare regels te maken.
Volg een routeringsverzoek
Stel dat een controller de beschikbare verbindingen tussen vier switches vastlegt. Een routeringsapplicatie leest die topologie via de API naar netwerkapplicaties en berekent een pad met de laagste kosten. Ze vraagt de controller de bijbehorende doorstuurregels te installeren. De controller vertaalt het verzoek in berichten via de interface naar netwerkapparaten voor de betrokken switches. Latere pakketten volgen die geïnstalleerde regels lokaal.
Door een routeringsapplicatie te wijzigen, kan dus het netwerkgedrag veranderen zonder de ingebouwde routeringssoftware van elke switch te wijzigen. Dezelfde doorstuurhardware kan routering, toegangscontrole of lastverdeling ondersteunen volgens de geïnstalleerde regels.
SDN wordt gebruikt binnen organisatienetwerken zoals datacenters en particuliere wijdvertakte netwerken. Googles B4 is een voorbeeld van centrale besturing voor een particulier netwerk dat datacenters verbindt. ONOS en OpenDaylight zijn voorbeelden van opensourcecontrollerplatforms. Op grenzen tussen onafhankelijke netwerken wisselt BGP nog steeds bereikbaarheidsinformatie uit; SDN-besturing binnen een AS en BGP tussen AS'en kunnen samenwerken.
Belangrijkste punten
- Switches passen stroomregels toe; applicaties bepalen welke regels het netwerk nodig heeft.
- De controller verbindt communicatie met apparaten, gedeelde toestand en applicatie-interfaces.
- Interfaces naar netwerkapplicaties zijn gericht op applicaties; interfaces naar netwerkapparaten op apparaten.
- Eén logische controller kan op meerdere servers draaien.
- SDN kan het algoritme van Dijkstra hergebruiken en naast BGP bestaan.
4.2 Werk switchregels bij met OpenFlow
OpenFlow vervoert opdrachten en gebeurtenissen tussen een controller en switches. Het gebruikt TCP met de geregistreerde poort 6653 en kan de verbinding met TLS beschermen. De controller heeft communicatie in beide richtingen nodig: hij wijzigt de doorstuurtoestand en ontvangt informatie dat de toestand of topologie is veranderd.
Lees een stroomregel
Een stroomregel heeft matchvelden, een prioriteit, tellers, acties en time-outs. In een tabel bepaalt de overeenkomende regel met de hoogste prioriteit hoe het pakket wordt afgehandeld. Een breed matchcriterium kan daardoor verliezen van een specifiekere regel met een hogere prioriteit.
In OpenFlow 1.3 kan een regel voor ontbrekende tabelovereenkomsten met de laagste prioriteit een pakket afhandelen dat met geen gewone regel overeenkomt. De actie kan het pakket naar de controller sturen. Zonder zo'n regel wordt een pakket zonder overeenkomst standaard verworpen. Alleen het ontbreken van een overeenkomst vereist geen packet-in-bericht.
Koppel berichten aan hun taken
| Richting | Bericht of bewerking | Taak |
|---|---|---|
| Controller naar switch | Features, configuration | Mogelijkheden opvragen of configuratie lezen en wijzigen |
| Controller naar switch | Flow-mod | Stroomregels toevoegen, wijzigen of verwijderen |
| Controller naar switch | Port-mod | De configuratie van een poort wijzigen |
| Controller naar switch | Read-state-verzoeken | Statistieken en tellers ophalen |
| Controller naar switch | Packet-out | Een opgegeven pakket via de switch verzenden |
| Switch naar controller | Port-status | Een verandering in de poorttoestand melden |
| Switch naar controller | Flow-removed | Verwijdering van een stroomregel melden |
| Switch naar controller | Packet-in | Een pakket of header afleveren omdat een regel daarom vraagt |
Flow-mod en port-mod zijn beide manieren om de toestand van een switch te wijzigen, maar alleen flow-mod bewerkt doorstuurregels. Packet-out handelt een specifiek pakket af; het installeert op zichzelf geen regel voor latere pakketten.
Herstel paden na een storing
Neem de switches S1 tot en met S4. De verbinding S1–S2 valt uit terwijl een andere route via S3 en S4 beschikbaar blijft.
- S1 detecteert dat zijn poort uitvalt en stuurt port-status.
- De controller verwijdert de uitgevallen verbinding uit zijn beeld van de netwerktoestand.
- De routeringsapplicatie ontvangt de gebeurtenis via de aanmelding bij de interface naar netwerkapplicaties.
- De applicatie berekent paden opnieuw op basis van de gewijzigde topologie.
- Een component voor de berekening van stroomtabellen zet die paden om in switchregels.
- De controller stuurt flow-mod-berichten naar de switches waarvan de regels moeten veranderen, zoals S1, S3 en S4.
De meldende switch levert een gebeurtenis; hij berekent niet zelf een netwerkbreed herstel. De applicatie heeft ook regels nodig die op de betrokken switches zijn geïnstalleerd, niet alleen een nieuw pad dat in de controller is opgeslagen.
Installeer vóór verkeer of reageer op het eerste pakket
Bij proactieve installatie staan regels klaar voordat pakketten aankomen. Bij reactieve installatie stuurt een geconfigureerde actie het eerste pakket van een nieuwe verkeersstroom in packet-in naar de controller. De controller kan een regel regelen en packet-out gebruiken wanneer hij een pakket moet vrijgeven.
Reactieve installatie vertraagt het eerste pakket en levert werk op voor de controller. Zodra de regel bestaat, blijven latere overeenkomende pakketten in het datavlak. De controller handelt geselecteerde gebeurtenissen en pakketten af, niet elk pakket in elke verkeersstroom. Verlopende regels kunnen later flow-removed-meldingen genereren, waarmee applicaties wijzigingen in de geïnstalleerde toestand kunnen volgen.
Belangrijkste punten
- Een stroomtabel gebruikt de overeenkomende regel met de hoogste prioriteit.
- Een pakket zonder overeenkomst wordt verworpen als geen regel voor ontbrekende tabelovereenkomsten het afhandelt.
- Port-status meldt een wijziging; flow-mod wijzigt stroomtabelregels.
- Herstel van een pad vereist bijgewerkte topologie, een nieuwe berekening en geïnstalleerde regels.
- Bij reactieve installatie is de controller betrokken bij geselecteerde pakketten; daarna blijft gewoon doorsturen lokaal.
- Packet-out verzendt een pakket; het installeert geen blijvende stroomregel.
5Meld fouten en test paden met ICMP
Een pakket kan zijn bestemming niet bereiken, ook als het bestemmingsadres juist is. ICMP meldt sommige van deze fouten en ondersteunt tests van bereikbaarheid en paden. Ping meet antwoorden van één doel; traceroute gebruikt beperkte pakketlevensduren om antwoordende routers langs een route zichtbaar te maken. Bij het lezen van beide tests is voorzichtigheid nodig: een ontbrekend of traag antwoord kan verschillende oorzaken hebben en elke RTT omvat een terugreis.
5.1 Lees ICMP-meldingen en houd de bepaling van de pad-MTU werkend
ICMP vervoert meldingen en tests van de netwerklaag binnen IP-datagrammen. ICMPv4 gebruikt IPv4-protocolnummer 1. De berichten hebben een type, een code en een controlesom. Het type geeft het algemene doel aan; de code specificeert het verder.
Koppel een fout aan het pakket dat die veroorzaakte
Een ICMPv4-foutmelding bevat de oorspronkelijke IP-header en minstens de eerste 8 bytes van de oorspronkelijke nettolading. Dat overgenomen deel levert meestal de transportinformatie die nodig is om de betrokken verkeersstroom te identificeren. De foutmelding gaat naar de oorspronkelijke verzender, die de melding dan kan koppelen aan een verzonden pakket.
| ICMPv4-type | Betekenis | Nuttige code |
|---|---|---|
| 0 | Echoantwoord | 0 |
| 3 | Bestemming onbereikbaar | 0 netwerk, 1 host, 2 protocol, 3 poort, 4 fragmentatie nodig |
| 5 | Omleiding | Code specificeert de omleiding |
| 8 | Echoverzoek | 0 |
| 11 | Levensduur overschreden | 0 voor onderweg verlopen TTL |
| 12 | Parameterprobleem | Code specificeert het headerprobleem |
Type 4, bronafremming, is verouderd en geen modern mechanisme voor congestiebeheersing.
Ga van de fout naar de melding
Een router die TTL tot 0 verlaagt, verwerpt het datagram en meldt dat de levensduur is overschreden. Een router zonder route kan melden dat het netwerk onbereikbaar is. Een bestemmingshost die UDP ontvangt voor een ongebruikte poort, kan melden dat de poort onbereikbaar is. Dit zijn verschillende fouten: het bereiken van de host garandeert niet dat een luisterende applicatie wordt bereikt.
ICMP-foutmeldingen zijn geen betrouwbare afleverbevestigingen. Filtering, berichtverlies of frequentiebeperking kan verhinderen dat een melding de verzender bereikt. Een onbeantwoorde test laat dus meerdere verklaringen open.
IPv4 onderdrukt foutmeldingen over een andere ICMP-foutmelding, over broadcast- of multicastverkeer en over andere fragmenten dan het eerste. Deze regels voorkomen ketens van foutmeldingen en buitensporig veel antwoorden. Apparaten beperken ook de frequentie waarmee ze foutmeldingen genereren.
Onderscheid ICMPv6
ICMPv6 gebruikt waarde 58 in het IPv6-veld voor de volgende header. De fouttypen zijn 1 bestemming onbereikbaar, 2 pakket te groot, 3 levensduur overschreden en 4 parameterprobleem. Echoverzoek en echoantwoord zijn typen 128 en 129. Buurdetectie gebruikt ook ICMPv6 en neemt in IPv6 de rol van ARP bij het bepalen van buren over.
De foutregels van IPv6 bevatten uitzonderingen voor multicast: pakket te groot kan als antwoord op een multicastpakket worden verstuurd, evenals bepaalde foutmeldingen over onbekende opties. Als je de algemene IPv4-onderdrukking voor multicast op ICMPv6 zou toepassen, zou vereist gedrag niet meer werken.
Volg de bepaling van de pad-MTU
Bij de klassieke bepaling van de IPv4-pad-MTU stelt de verzender niet fragmenteren in. Een router die een kleinere MTU op de uitgaande verbinding tegenkomt, verwerpt een te groot datagram en stuurt type 3, code 4 terug, met de MTU van de volgende verbinding. De verzender kan latere pakketten kleiner maken.
Een IPv4-datagram van 1.500 bytes bereikt bijvoorbeeld een verbinding met MTU 1.400 bytes terwijl niet fragmenteren is ingesteld. De router verwerpt het en meldt dat fragmentatie nodig is, met MTU 1.400. De verzender past zijn IP-pakketgrootte aan; de waarde 1.400 bytes omvat de IP-header en is dus niet de maximale nettolading voor een applicatie.
IPv6-routers fragmenteren doorgestuurde pakketten nooit. Ze sturen pakket te groot terug zodat de bron zich kan aanpassen. Als alle ICMP wordt geblokkeerd, verdwijnt deze terugkoppeling en kan een zwart gat bij de bepaling van de pad-MTU ontstaan: kleine pakketten werken, terwijl grotere verdwijnen. Selectieve filtering behoudt de berichten die nodig zijn voor de werking van het netwerk.
Belangrijkste punten
- Het ICMP-type en de code geven het doel en de details van een melding aan.
- ICMPv4-foutmeldingen nemen genoeg van het oorspronkelijke pakket over om de verkeersstroom te helpen identificeren.
- Een verlopen TTL, een ontbrekende route en een ongebruikte UDP-poort leveren verschillende meldingen op.
- ICMPv6 heeft eigen typewaarden en uitzonderingen voor multicastfouten.
- De bepaling van de pad-MTU is afhankelijk van meldingen dat fragmentatie nodig is of dat een pakket te groot is.
- Een ontbrekend antwoord kan naast een storing ook het gevolg zijn van filtering of frequentiebeperking.
5.2 Gebruik ping en traceroute zonder te veel uit de resultaten af te leiden
Ping vraagt een doel om te antwoorden. Traceroute gebruikt meetpakketten die bij opeenvolgende hops verlopen om antwoordende routers langs het heenpad te vinden. Beide rapporteren rondlooptijden, die de heenreis, het aanmaken van het antwoord en de terugreis combineren.
Lees een pingresultaat
Voor IPv4 stuurt ping echoverzoeken, type 8 code 0, en ontvangt echoantwoorden, type 0. Elke geslaagde uitwisseling levert een RTT op. Als drie van de vier meetpakketten een antwoord krijgen, blijft één van de vier onbeantwoord: het waargenomen verlies is 25%.
Een antwoord toont aan dat een uitwisseling met het doel op dat moment werkte. Geen antwoord kan wijzen op een defect doel of pad, maar kan ook betekenen dat echoberichten worden gefilterd of in frequentie beperkt. Ping test deze berichten, niet elk applicatieprotocol dat de host mogelijk gebruikt.
Maak opeenvolgende hops zichtbaar met een beperkte TTL
Traceroute stuurt eerst een meetpakket met TTL 1. De eerste router verlaagt die tot 0, verwerpt het pakket en kan een ICMP-melding voor overschreden levensduur terugsturen. TTL 2 bereikt de volgende router voordat die verloopt. Door TTL te verhogen herhaalt dit proces zich verder langs het pad. De bron registreert voor elk antwoord het adres en de verstreken tijd.
Klassieke Unix-traceroute gebruikt UDP-meetpakketten naar onwaarschijnlijke bestemmingspoorten, vanaf 33434. Op de bestemming geeft poort onbereikbaar aan dat het pakket is aangekomen. Windows-tracert gebruikt echoverzoeken en herkent een echoantwoord op de bestemming. Drie meetpakketten bij elke TTL zijn gebruikelijk; afzonderlijke meetpakketten kunnen door lastverdeling verschillende paden volgen.
Interpreteer een volledige traceroute
| Hop | Antwoordend adres | RTT |
|---|---|---|
| 1 | 192.168.1.1 | 1 ms |
| 2 | 198.51.100.1 | 9 ms |
| 3 | 198.51.100.77 | 12 ms |
| 4 | 203.0.113.9 | 95 ms |
| 5 | 203.0.113.80, bestemming | 97 ms |
De bestemming antwoordt bij hop 5. De gemeten RTT stijgt van hop 3 naar hop 4 met ms en blijft daarna hoog. Dat past bij een trager of langer traject in de buurt van dat punt, maar de aftrekking is niet de vertraging in één richting van de tussenliggende verbinding. De antwoorden zijn verschillende pakketten, kunnen verschillende terugpaden gebruiken en bevatten verschillende verwerkings- en wachtrijvertragingen. Uit alleen deze RTT's volgt geen verbindingslengte.
Verklaar stilte en ongewoon hoge RTT's bij tussenliggende hops
Een regel met “* * *” betekent dat de meetpakketten bij die TTL niet tijdig een antwoord kregen. Als latere hops antwoorden, komen pakketten verder door het netwerk. De zwijgende router kan normaal doorsturen terwijl hij zijn eigen ICMP-antwoorden onderdrukt.
Een tussenliggende router kan ook een hogere RTT tonen dan latere routers. Het maken van een ICMP-antwoord kan een lagere prioriteit krijgen dan het doorsturen van verkeer, dus bewijst één trage reactie van het besturingsvlak niet dat een doorstuurverbinding traag is. Een blijvende stijging die bij latere hops aanhoudt, vraagt om een andere beoordeling dan een afzonderlijke piek.
Houd de beperkingen van het padonderzoek in beeld
Traceroute toont antwoordende routerinterfaces, geen lijst met AS-nummers. Die adressen koppelen aan de netwerken die ze aankondigen is een extra stap. De traceroute toont ook het terugpad niet, hoewel dat terugpad bijdraagt aan elke RTT. Routeringsbeleid en hot-potatokeuzes kunnen ervoor zorgen dat de terugrichting andere netwerken volgt, zodat een afzonderlijke traceroute in de terugrichting een ander beeld kan geven.
Belangrijkste punten
- Ping rapporteert echo-uitwisselingen en hun RTT's.
- Traceroute verhoogt TTL en identificeert routers aan de hand van meldingen over verlopen levensduur.
- UDP-traceroute eindigt meestal met poort onbereikbaar; een traceroute met echoverzoeken eindigt met een echoantwoord.
- Sterretjes geven aan dat tijdige antwoorden ontbreken, ook als het doorsturen doorgaat.
- RTT-verschillen zijn geen vertragingen per verbinding in één richting.
- Een traceroute toont antwoordende interfaces op het heenpad, niet het terugpad of AS-grenzen.
6Beheer netwerken met SNMP, NETCONF en YANG
Beheerders moeten kunnen zien wat een netwerk doet en het gedrag van apparaten kunnen veranderen. SNMP stelt benoemde objecten beschikbaar voor bewaking en beperkte wijzigingen; tellers zetten die waarnemingen om in snelheden. NETCONF biedt gestructureerde configuratiebewerkingen en YANG definieert de gegevens die deze bewerkingen vervoeren. Een gecoördineerde wijziging op twee routers laat zien waarom een configuratie controleren en die veilig activeren verschillende taken zijn.
6.1 Zet SNMP-objecten en tellers om in bewakingsgegevens
Netwerkbeheer verbindt de doelen van een beheerder met waarnemingen en wijzigingen op apparaten. Het kader heeft vijf onderdelen: een beheerserver, beheerde apparaten, de gegevens van de apparaten, agents die die gegevens beschikbaar stellen en een protocol dat agents met de server verbindt.
Herken de objecten en berichten
SNMP, het Simple Network Management Protocol, gebruikt meestal UDP. Agents luisteren op poort 161; beheerders ontvangen meldingen op poort 162. GetRequest leest objecten, GetNextRequest doorloopt hun naamvolgorde en GetBulkRequest leest efficiënt veel waarden. SetRequest wijzigt schrijfbare objecten. Response bevat het resultaat.
Een trap is een ongevraagde melding zonder bevestiging op applicatieniveau. Een InformRequest wordt door de ontvanger bevestigd. Een agent kan dus een gebeurtenis melden zonder op de volgende bewakingsopvraging te wachten.
Een beheerinformatiebank (MIB) definieert beheerde objecten in modules met de gegevensdefinitietaal SMI. Elk object heeft een objectidentificatie (OID) in een wereldwijde naamboom. De OID identificeert een gedefinieerd object; de agent levert de actuele waarde.
Zo meet sysUpTime, OID 1.3.6.1.2.1.1.3, de tijd sinds het beheersysteem van het apparaat opnieuw is gestart. ifInOctets, OID 1.3.6.1.2.1.2.2.1.10, definieert tellers voor ontvangen bytes per interface. Een tabelregel heeft ook de interface-instantie nodig om aan te geven van welke interface de waarde wordt gelezen.
Bereken benutting uit twee opvragingen
De teller van een interface van 100 Mbit/s stijgt in 60 seconden van 1.250.000.000 naar 1.475.000.000 bytes. Bepaal eerst de ontvangen hoeveelheid:
Zet bytes om in bits en deel door de verstreken tijd:
De inkomende benutting is , of 30%. Een teller is een cumulatief totaal, geen snelheid; zowel het verschil als de verstreken tijd is nodig. Door bytes en bits te onderscheiden voorkom je een achtvoudige fout.
Herken cyclische terugloop en herstart
ifInOctets is 32-bits en loopt na bytes terug naar nul. Bij 1 Gbit/s duurt dat ongeveer seconden. Een interval van 60 seconden kan meerdere teruglopen verbergen, zodat je de totale hoeveelheid verkeer niet uit alleen de twee waarden kunt afleiden. De 64-bitsteller ifHCInOctets is geschikt voor snelle interfaces.
Als de teller maximaal één keer is teruggelopen en niet is teruggezet, tel je op bij een negatief verschil. Een herstart van een apparaat of teller moet je afzonderlijk behandelen; als je elke daling als terugloop beschouwt, kan een onterechte verkeerspiek ontstaan.
Kies veilige bewaking en gestructureerde wijzigingen
SNMPv1 en SNMPv2c gebruiken communitystrings in klare tekst. SNMPv3 ondersteunt authenticatie, versleuteling en toegangscontrole op objectniveau; kies de beveiligingsinstellingen die deze bescherming bieden.
SNMP wordt veel gebruikt voor bewaking. Eén SetRequest valideert de gevraagde wijzigingen voordat ze als groep op één apparaat worden toegepast. Als toewijzing mislukt, probeert de agent de wijzigingen ongedaan te maken; een undoFailed-antwoord meldt dat het herstel zelf is mislukt. Dit maakt geen transactie over meerdere apparaten mogelijk. Afzonderlijke MIB-objecten bewerken is ook omslachtig bij grote configuraties. Op een CLI kun je opdrachten typen of via scripts uitvoeren, maar tekstopdrachten per apparaat worden op grote schaal moeilijker te coördineren; NETCONF biedt daarvoor gestructureerde configuratiebewerkingen.
Belangrijkste punten
- MIB-modules definiëren objecten; OID's identificeren ze en agents stellen hun waarden beschikbaar.
- Traps zijn onbevestigde meldingen; informs worden bevestigd.
- Een tellerverschil gedeeld door de verstreken tijd geeft een snelheid.
- Zet bytes om in bits voordat je ze vergelijkt met een verbindingssnelheid in bit/s.
- Meerdere verborgen teruglopen maken een korte teller ongeschikt voor een opvraaginterval.
- SNMPv3 ondersteunt geauthenticeerd, versleuteld beheer met toegangscontrole.
- Een SetRequest groepeert objecten op één apparaat, niet op meerdere apparaten.
6.2 Bereid configuratie voor en activeer die met NETCONF en YANG
NETCONF leest en wijzigt gestructureerde apparaatconfiguratie. YANG definieert de structuur, typen en beperkingen van de beheerde gegevens. Het protocol verplaatst en past gegevens toe; het model beschrijft wat die gegevens betekenen en welke waarden zijn toegestaan.
Open een beveiligde sessie en bekijk de mogelijkheden
NETCONF werkt normaal via SSH op poort 830; beveiligd transport kan ook TLS gebruiken. Client en server wisselen hello-berichten uit waarin ze ondersteunde mogelijkheden aankondigen. Verzoeken en antwoorden zijn in XML gecodeerde aanroepen van procedures op afstand (RPC's).
| Bewerking | Doel |
|---|---|
get-config | Configuratie lezen |
get | Configuratie en operationele toestand lezen |
edit-config | Een configuratieopslag wijzigen |
copy-config, delete-config | Waar toegestaan een volledige configuratie vervangen of verwijderen |
lock, unlock | Gelijktijdige toegang tot een configuratieopslag regelen |
validate | Een configuratie controleren indien ondersteund |
commit | Een voorbereide kandidaatconfiguratie activeren indien ondersteund |
close-session, kill-session | Een sessie normaal afsluiten of beëindigen |
Mogelijkheden zijn belangrijk. Een beheerder moet nagaan of kandidaatconfiguratie, validatie of activering met bevestigingsvereiste wordt ondersteund voordat hij erop vertrouwt.
Scheid actieve, voorbereide en opstartconfiguraties
De actieve configuratieopslag is actief. Een ondersteunde kandidaatconfiguratieopslag is een werkkopie voor voorgestelde wijzigingen en een ondersteunde opstartconfiguratieopslag bevat de configuratie die bij het opstarten wordt geladen. Alleen de kandidaat wijzigen laat de actieve configuratie ongewijzigd. Een activering kopieert de voorbereide kandidaat naar de actieve configuratie.
Een vergrendeling voorkomt tegenstrijdige bewerkingen terwijl de beheerder werkt. Validatie controleert de regels van de kandidaat; ze stelt niet vast dat het verkeer zich na activering zoals bedoeld blijft gedragen.
Coördineer twee apparaten zonder één atomaire activering te veronderstellen
Om de MTU op een verbinding tussen R1 en R2 te wijzigen, vergrendelt de beheerder beide kandidaten, stuurt hij edit-config naar elk apparaat en valideert hij beide. Als een van beide validaties mislukt, verwerpt hij beide voorbereide wijzigingen en heft hij de vergrendelingen vóór activering op.
Als validatie slaagt, activeert hij de wijzigingen op elk apparaat en controleert hij de antwoorden. De activeringen staan los van elkaar: R1 kan vóór R2 veranderen, of de ene activering kan slagen terwijl de andere mislukt. De beheerder moet dit gedeeltelijke resultaat detecteren en herstellen, bijvoorbeeld door de eerdere configuratie terug te zetten.
Bij activering met bevestigingsvereiste draait een apparaat de wijziging automatisch terug tenzij de beheerder die binnen een ingestelde tijd bevestigt. Dit helpt wanneer een nieuwe configuratie de beheertoegang afsluit. Elk apparaat heeft nog steeds zijn eigen bewerking en timer; activering met bevestigingsvereiste maakt van het paar geen enkele netwerkbrede transactie.
Gebruik een model om een ongeldige waarde te verwerpen
Een YANG-module organiseert gegevens in containers, lijsten en bladeren. Een blad met de naam mtu kan het type uint16 en het toegestane bereik 68–65535 hebben. De waarde 40 valt buiten het bereik, ook al past die in het type voor gehele getallen zonder teken. Modelvalidatie controleert zowel het type als de beperkingen.
Hulpmiddelen kunnen YANG-modellen gebruiken om NETCONF-XML of RESTCONF-JSON te controleren. Standaard IETF-interfacemodellen, leveranciersmodellen en OpenConfig-modellen bieden verschillende gegevensdefinities. Streamingtelemetrie kan gemodelleerde toestandsgegevens met tussenpozen versturen als aanvulling op polling.
SNMP blijft nuttig voor het bewaken van afzonderlijke objecten. NETCONF biedt sessiegebaseerde configuratiebewerkingen en basisvoorzieningen voor coördinatie op apparaatniveau. Geen van beide protocollen garandeert op zichzelf dat afzonderlijke apparaten een netwerkbrede wijziging gelijktijdig activeren.
Belangrijkste punten
- NETCONF vervoert configuratiebewerkingen; YANG definieert de beheerde gegevens.
- De mogelijkheden bepalen welke configuratieopslagen en bewerkingen een apparaat ondersteunt.
- Het wijzigen van de kandidaatconfiguratie verandert de actieve configuratie pas bij activering.
- Vergrendeling en validatie bereiden een wijziging voor; daarna volgen activering en controles van de werking.
- Afzonderlijke activeringen op apparaten kunnen een gedeeltelijk resultaat opleveren.
- Activering met bevestigingsvereiste draait een onbevestigde wijziging automatisch terug.
- Een YANG-beperking kan een waarde verwerpen die wel in het basisgegevenstype past.
Besturingsvlak: voorbeelden
1Bereken routes en volg een gewijzigde verbinding
20 stappen
- 1IntroductieBouw de regels die pakketten volgen
De volledige route van een pakket ontstaat uit lokale doorstuurbeslissingen. Routeringssoftware moet elke router een volgende hop geven die past bij wat de andere routers gaan doen.
Begin met een gewogen graaf, bereken een pad met de laagste kosten en wijzig daarna een verbinding. De berekeningen laten zowel de uiteindelijke route als een gevaar tijdens convergentie zien: de door een buur geadverteerde kosten kunnen een route verbergen die rechtstreeks naar jou terugloopt.
- 2UitlegOnderscheid routering van doorsturen
Het besturingsvlak leert routes en bepaalt de doorstuurtoestand. Het datavlak past die toestand toe op elk binnenkomend pakket.
Traditionele routers wisselen routeringsberichten uit en rekenen lokaal. SDN-applicaties kunnen via een controller berekeningen uitvoeren en op afstand regels installeren. Beide opzetten eindigen nog steeds met een lokale handeling: de bestemming of verkeersstroom met een regel vergelijken en een uitgaande verbinding selecteren.
- 3VoorbeeldTel kosten op in plaats van verbindingen te tellen
Laat A–B kosten 3 hebben, A–C kosten 1 en C–B kosten 1. De directe route A–B gebruikt minder verbindingen maar kost meer.
A stuurt verkeer voor B naar C omdat 2 kleiner is dan 3. Alleen als elke verbinding kosten 1 heeft, betekenen de laagste totale kosten ook het kleinste aantal hops. Het gewicht meet wat de beheerder heeft gekozen, niet noodzakelijk afstand of pakketvertraging.
- 4UitdagingVereist volledige kennis één computer?
Elke router heeft dezelfde topologiegraaf en berekent onafhankelijk een boom met zichzelf als wortel. Is het algoritme globaal en draait de besturing op één server?
---reveal---
Het algoritme is globaal omdat elke berekening volledige topologie-informatie gebruikt. De besturing draait nog steeds afzonderlijk in elke router. “Globaal” duidt de informatie aan die het algoritme beschikbaar heeft; het zegt niets over het aantal of de locatie van de computers die het uitvoeren.
- 5UitlegHoud voorlopige en definitieve antwoorden bij
Het algoritme van Dijkstra houdt een verzameling definitieve knooppunten, voorlopige kosten naar bestemmingen en voorgangers bij. Begin met de bron als definitief knooppunt, de buren met hun directe kosten en de andere knooppunten met oneindige kosten.
Selecteer de kleinste niet-definitieve kosten, maak dat knooppunt definitief en probeer daarna paden via dat knooppunt naar zijn niet-definitieve buren. Een voorganger legt het vorige knooppunt op het gekozen pad vast. Doordat verbindingskosten niet negatief zijn, blijft elk definitief gemaakt resultaat definitief.
- 6VoorbeeldBegin de berekening met zes routers
Gebruik de verbindingen A–B 3, A–C 1, B–C 1, B–D 4, C–D 6, C–E 2, D–E 1, D–F 3 en E–F 5. Bron A begint met B op 3 en C op 1; D, E en F zijn niet via een bekend pad bereikbaar.
C is de kleinste niet-definitieve kandidaat. Als C definitief wordt, krijgt B kosten 2 via C, D kosten 7 via C en E kosten 3 via C. Leg C vast als voorganger waar dat de schatting heeft verbeterd.
- 7VoorbeeldMaak B definitief en daarna E
B heeft nu de kleinste voorlopige kosten, 2. De verbinding met D verbetert de schatting van D:
E volgt met kosten 3. Via E verbetert D opnieuw naar 4 en wordt F voor het eerst bereikbaar met kosten 8. D heeft nu de schattingen 7, 6 en 4 gehad. Elk daarvan was voorlopig; geen ervan werd definitief alleen doordat die in een update verscheen.
- 8VoorbeeldRond af en bepaal de eerste hop
Maak D definitief met kosten 4. De verbinding van D met F verbetert F van 8 naar 7 en F wordt als laatste definitief.
De voorgangerketen van F is F ← D ← E ← C ← A. Het pad A–C–E–D–F heeft kosten 7. Gebruik C, de eerste router na A, om de doorstuurregel van A te installeren. D is de voorganger van F, maar A stuurt het pakket niet rechtstreeks naar D. Elk beste pad vanaf A in deze graaf begint via C.
- 9UitdagingGebruik een andere graaf
Een ongerichte graaf heeft Q–R 5, Q–S 2, S–R 1, R–T 3 en S–T 8. Wat zijn de laagste kosten en de eerste hop van Q voor T?
---reveal---
Q–S–R–T heeft kosten , dus is de eerste hop van Q S. Het pad rechtstreeks via R heeft kosten 8 en Q–S–T heeft kosten 10. R is de voorganger van T op het beste pad; als je R als eerste hop van Q kiest, sla je de goedkopere eerste verbinding via S over.
- 10KernpuntKosten kunnen veranderen door het verkeer dat ze aantrekken
Als verbindingskosten stijgen met de belasting, kan elke router tegelijk hetzelfde licht belaste pad kiezen. Die verschuiving maakt het pad duur, zodat de volgende gezamenlijke berekening het verkeer weer wegleidt.
Deze terugkoppeling kan oscilleren, ook als de berekening correct is. Belastingsonafhankelijke kosten nemen die specifieke aanleiding weg. Willekeurige tijdstippen kunnen gelijktijdige wijzigingen ook verminderen. Een statische wiskundige graaf en een graaf die op zijn eigen verkeer reageert, gedragen zich verschillend.
- 11UitlegVervang de graaf door schattingen van buren
Een afstandsvectorrouter kent de kosten van zijn aangesloten verbindingen en de door buren geadverteerde schattingen naar bestemmingen. Voor elke andere bestemming vergelijkt hij het totaal via elke buur.
De eigen afstand blijft 0. Een nieuwe buurvector of een gewijzigde lokale verbinding leidt tot een nieuwe berekening. Gewijzigde schattingen worden doorgestuurd, zodat informatie zich verspreidt zonder dat een router de hele graaf opslaat.
- 12VoorbeeldBereken vanaf A met de vector van B
Laat A–B kosten 4 hebben, B–C kosten 1 en A–C kosten 7. B adverteert aanvankelijk kosten 1 naar C. A vergelijkt zijn alternatieven:
A selecteert B als volgende hop voor C. Op dezelfde manier leert C kosten 5 naar A via B. De volgende uitwisseling verandert niets. De routers zijn geconvergeerd zonder dat A een beschrijving van de verbinding van B naar C nodig heeft.
- 13UitdagingNeem de kosten van de eerste verbinding mee
J bereikt buren K en L met kosten 2 en 7. Zij adverteren bestemming Z met kosten 9 en 1. Welke buur kiest J en welke kosten legt J vast?
---reveal---
J legt kosten 8 via L vast. De alternatieven zijn via K en via L. Als je kosten 1 kiest, neem je de schatting van L over zonder de kosten van de verbinding van J naar L mee te tellen. Het minimum bepaalt zowel de schatting als de volgende hop.
- 14VerbandRIP voegt berichten en timers toe
RIP vormt een protocol rond de afstandsvectorberekening. Het telt hops, gebruikt 16 voor onbereikbaar, verstuurt elke 30 seconden periodieke updates via UDP-poort 520 en laat een niet-ververste route na 180 seconden verlopen.
Het basisalgoritme adverteert wanneer de schatting verandert; RIP verstuurt ook periodieke protocolberichten wanneer routes stabiel zijn. De kleine waarde voor oneindig beperkt het tellen tot oneindig, maar beperkt bruikbare paden ook tot 15 hops.
- 15VoorbeeldVerhoog de kosten en leg een verborgen afhankelijkheid bloot
Begin met A–B 2, B–C 1 en A–C 20. C bereikt A via B met kosten 3. Nu stijgt A–B naar 40.
B ziet nog steeds de oude kosten 3 van C en berekent 4 via C. Maar de geselecteerde route van C loopt terug naar B. Beide schattingen lijken bruikbaar terwijl de doorstuurbeslissingen een lus vormen. TTL beperkt hoelang één pakket kan rondgaan; het corrigeert de routeschattingen niet.
- 16VoorbeeldZie hoe de schattingen oplopen
C verneemt de nieuwe kosten 4 van B en adverteert 5 via B. B adverteert daarna 6, C adverteert 7 en de cyclus gaat door. Dit is tellen tot oneindig.
De directe verbinding A–C doorbreekt uiteindelijk de cyclus. Wanneer B 20 adverteert, kiest C zijn eigen kosten 20 in plaats van 21 via B. B bereikt A daarna via C met kosten 21. De vertraging ontstond doordat afhankelijke verouderde schattingen als nieuwe alternatieven werden beschouwd.
- 17UitlegAdverteer de route als oneindig aan de volgende hop
Met poisoned reverse adverteert C aanvankelijk oneindig voor A specifiek aan B, omdat B de volgende hop van C voor A is. B kan de route van C niet als onafhankelijke reserve gebruiken.
Nadat A–B naar 40 stijgt, adverteert B zijn directe 40. C kiest dan zijn directe 20 en adverteert die onafhankelijke route. B komt uit op 21 via C. De verdediging voorkomt deze lus tussen twee routers; langere afhankelijkheidscycli kunnen nog steeds ontstaan.
- 18UitdagingVerlaag in plaats daarvan de kosten
Verbindingen A–B 6, B–C 2 en A–C 30 zijn geconvergeerd. A–B daalt naar 3. Welke nieuwe kosten naar A adverteren eerst B en daarna C?
---reveal---
B adverteert 3 via zijn directe verbinding. C vergelijkt zijn directe 30 met en adverteert 5 via B. Het horen van 5 verbetert de directe 3 van B niet. De lagere kosten verspreiden zich hier zonder problemen omdat geen van beide routers de verouderde schatting van de ander nodig heeft om de verbetering te rechtvaardigen.
- 19UitdagingOnderscheid verdediging tegen lussen van het verwijderen van pakketten
Na een kostenstijging sturen twee routers verkeer voor een bestemming naar elkaar door. Een cursist zegt: “TTL lost het probleem al op, dus hun routeschattingen hoeven niet te veranderen.” Wat ontbreekt?
---reveal---
TTL zorgt er uiteindelijk voor dat elk rondgaand datagram wordt verworpen, maar latere datagrammen kunnen in dezelfde lus terechtkomen. De routering moet convergeren naar consistente volgende hops. Poisoned reverse kan de afhankelijkheid tussen twee routers tijdens de uitwisseling blokkeren; het verandert de routeringsinformatie in plaats van alleen de levensduur van één pakket te beperken.
- 20SamenvattingLees een routeberekening in drie stappen
Bepaal eerst welke informatie beschikbaar is: een volledige graaf of schattingen van buren naar bestemmingen. Volg daarna de berekening totdat de kosten stabiel zijn. Haal er ten slotte de eerste hop uit die de doorstuurtabel nodig heeft.
Bekijk bij een gewijzigde verbinding ook de tussentijdse afhankelijkheden. Een definitief antwoord met de laagste kosten beschrijft niet elke doorstuurbeslissing die wordt genomen terwijl routers nog convergeren.
2Bouw een OSPF-routeringsdomein en maak het schaalbaar
14 stappen
Sla deze les op om elke Walkthrough stap voor stap te volgen.
- 1IntroductieVind interne paden zonder een platte internetgraaf
- 2UitlegGeef elke beheerder een routeringsgrens
- 3VoorbeeldBepaal de route naar de uitgang via een interne buur
- 4UitdagingMoeten aangrenzende AS'en hetzelfde IGP gebruiken?
- 5UitlegOntdek buren voordat je de toestand synchroniseert
- 6UitlegHoud verbindingsbeschrijvingen actueel
- 7VoorbeeldLaat gewichten de keuze van de beheerder uitdrukken
- 8VoorbeeldTel de adjacenties met de DR en BDR
- 9UitdagingBekijk een lokaal netwerk met een andere grootte
- 10UitlegHoud afzonderlijke grafen bij voor afzonderlijke gebieden
- 11VoorbeeldVolg verkeer van het ene gebied naar het andere
- 12UitdagingVerbergt een gebiedsgrens gewijzigde kosten?
- 13UitdagingVerbind een externe route met een interne wijziging
- 14SamenvattingBepaal de grens voordat je het mechanisme kiest
3Volg een BGP-route van advertentie tot doorsturen
19 stappen
Sla deze les op om elke Walkthrough stap voor stap te volgen.
- 1IntroductieVolg zowel de belofte als het pakket
- 2UitlegVerbind externe en interne BGP-sessies
- 3VoorbeeldVoeg het adverterende AS-nummer vooraan toe
- 4UitdagingVerwerp een route die terugkeert naar je AS
- 5TipLees updates als wijzigingen, niet als periodieke volledige tabellen
- 6UitlegStop bij de eerste doorslaggevende voorkeur
- 7VoorbeeldBereik hot-potatoroutering bij gelijke eerdere attributen
- 8VoorbeeldPas een voorkeur toe voordat je de uitgang beoordeelt
- 9UitdagingLaat je niet verleiden door een lage MED
- 10VerbandGebruik dezelfde routeselectie voor anycast
- 11UitlegOnderscheid betaalde transit van peering
- 12VoorbeeldVoorkom dat een klant transit tussen providers wordt
- 13UitdagingDeel een route bij het volgende AS opnieuw in
- 14UitlegOnderscheid een kaping van een lek
- 15VoorbeeldZie hoe een lokale blokkade zich internationaal verspreidt
- 16UitlegControleer prefix, oorsprong en lengte aan de hand van een ROA
- 17UitdagingSluit een geldige oorsprong een routelek uit?
- 18UitdagingCombineer validatie, filtering en doorsturen
- 19SamenvattingStel drie verschillende vragen over een route
4Herstel een pad via een SDN-controller
11 stappen
Sla deze les op om elke Walkthrough stap voor stap te volgen.
- 1IntroductieZet het pad van een applicatie om in apparaatgedrag
- 2UitlegBepaal waar de beslissing en de doorstuuractie plaatsvinden
- 3UitlegVolg interfaces naar netwerkapplicaties en netwerkapparaten
- 4UitdagingKan een cluster gecentraliseerde besturing bieden?
- 5UitlegKoppel een pakket aan de regel met de hoogste prioriteit
- 6VoorbeeldOntvang de melding van de uitgevallen verbinding
- 7VoorbeeldBereken en installeer de omweg
- 8UitdagingEén pakket vrijgeven of later verkeer programmeren?
- 9KernpuntReageer op het eerste pakket zonder alle pakketten af te handelen
- 10UitdagingGebruik een gebeurtenis en de resterende graaf
- 11SamenvattingVolg de toestand tot in de switches
5Leg een ICMP-melding uit en lees een padtest
13 stappen
Sla deze les op om elke Walkthrough stap voor stap te volgen.
- 1IntroductieBepaal wat het netwerk daadwerkelijk heeft gemeld
- 2UitlegLees het type en de code
- 3VoorbeeldKoppel verschillende fouten aan verschillende bronnen
- 4VoorbeeldVolg een te groot IPv4-pakket
- 5VerbandBehoud ook de IPv6-terugkoppeling over pakketgrootte
- 6UitdagingOnderzoek een storing die van pakketgrootte afhangt
- 7VoorbeeldBereken pingverlies ten opzichte van verzonden verzoeken
- 8UitlegVerhoog TTL om latere routers zichtbaar te maken
- 9VoorbeeldLees een aanhoudende RTT-stijging
- 10UitdagingLees een afzonderlijke trage routerreactie
- 11TipBeschouw sterretjes als time-outs, niet als topologiediagram
- 12UitdagingHoud aankomst en een luisterende applicatie uit elkaar
- 13SamenvattingNoem de waarneming vóór de diagnose
6Meet benutting en bereid een wijziging op twee apparaten voor
16 stappen
Sla deze les op om elke Walkthrough stap voor stap te volgen.
- 1IntroductieNeem eerst waar en wijzig daarna met terugkoppeling
- 2UitlegVerbind de server met beheerde objecten
- 3UitlegKies een leesverzoek of een melding
- 4VoorbeeldTrek de telleropnamen van elkaar af
- 5VoorbeeldZet het intervaltotaal om in benutting
- 6UitlegControleer of de teller teruglopen kan verbergen
- 7UitdagingBereken een nieuw meetinterval
- 8VerbandBeveilig bewaking en onderscheid configuratiehulpmiddelen
- 9UitlegOntdek mogelijkheden en houd configuratieopslagen gescheiden
- 10VoorbeeldBereid de twee eindpunten van de verbinding voor
- 11VoorbeeldActiveer afzonderlijk en bekijk het resultaat
- 12KernpuntGebruik activering met bevestigingsvereiste om verloren toegang te herstellen
- 13UitlegLaat YANG de waarden begrenzen
- 14UitdagingOnderzoek een mislukte voorbereiding
- 15UitdagingCombineer activering met metingen van de werking
- 16SamenvattingControleer de betekenis achter elke gerapporteerde waarde
Besturingsvlak: oefenvragen
Set 1: Bereken routes en volg wijzigingen10 Oefenvragen
Vraag 1 van 10
Toon antwoordVerberg antwoord
Vraag 2 van 10
Toon antwoordVerberg antwoord
Vraag 3 van 10
Toon antwoordVerberg antwoord
Vraag 4 van 10
Toon antwoordVerberg antwoord
Vraag 5 van 10
Toon antwoordVerberg antwoord
Vraag 6 van 10
Toon antwoordVerberg antwoord
Vraag 7 van 10
Toon antwoordVerberg antwoord
Vraag 8 van 10
Toon antwoordVerberg antwoord
Vraag 9 van 10
Toon antwoordVerberg antwoord
Vraag 10 van 10
Toon antwoordVerberg antwoord
Set 2: Verbind interne routes met externe bereikbaarheid10 Oefenvragen
Sla deze les op om elk antwoord te zien en elke set te oefenen.
Vraag 1 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 2 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 3 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 4 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 5 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 6 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 7 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 8 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 9 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 10 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Set 3: Kies BGP-routes en beperk routeringsfouten10 Oefenvragen
Sla deze les op om elk antwoord te zien en elke set te oefenen.
Vraag 1 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 2 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 3 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 4 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 5 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 6 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 7 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 8 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 9 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 10 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Set 4: Volg controllergebeurtenissen en pakketmeldingen10 Oefenvragen
Sla deze les op om elk antwoord te zien en elke set te oefenen.
Vraag 1 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 2 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 3 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 4 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 5 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 6 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 7 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 8 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 9 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 10 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Set 5: Meet verkeer en coördineer configuratie10 Oefenvragen
Sla deze les op om elk antwoord te zien en elke set te oefenen.
Vraag 1 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 2 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 3 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 4 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 5 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 6 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 7 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 8 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 9 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 10 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Set 6: Los problemen met routering en beheer op10 Oefenvragen
Sla deze les op om elk antwoord te zien en elke set te oefenen.
Vraag 1 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 2 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 3 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 4 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 5 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 6 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 7 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 8 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 9 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Vraag 10 van 10
Toon antwoordVerberg antwoord
Sla deze les op om dit antwoord te zien.
Kom je niet uit je eigen opgave? Huiswerkhulp
Kernbegrippen
A
aangewezen router
actieve configuratieopslag
activering met bevestigingsvereiste
afstandsvector
algoritme van Dijkstra
AS-externe LSA
AS-grensrouter
AS-nummer
AS-PATH
asymmetrische routering
autonoom systeem
autorisatie van routeoorsprong
B
backbonegebied
beheeragent
beheerinformatiebank
Bellman–Ford-vergelijking
bepaling van de pad-MTU
besturingsvlak
BGP
buurdetectie
C
convergentie
cyclische terugloop van een teller
D
datavlak
dynamische routering
E
exportbeleid
extern BGP
F
flow-mod
frequentiebeperking van ICMP-berichten
G
gebiedsgrensrouter
globaal routeringsalgoritme
grensrouter
H
Hello-pakket
hot-potatoroutering
I
ICMP
ICMP-type en -code
importbeleid
InformRequest
interface naar netwerkapparaten
interface naar netwerkapplicaties
intern BGP
intern routeringsprotocol
internetknooppunt
IP-anycast
K
kandidaatconfiguratieopslag
kortste-padenboom
L
levensduur overschreden
limiet voor het aantal prefixen
linkstateadvertentie
linkstateroutering
LOCAL_PREF
logische centralisatie
M
MED
N
NETCONF
NEXT-HOP
O
objectidentificatie
OpenFlow
opstartconfiguratieopslag
ORIGIN
OSPF
OSPF-adjacentie
OSPF-gebied
P
packet-in
packet-out
pad met de laagste kosten
padvectorprotocol
pakket te groot
peering
ping
poisoned reverse
port-status
prefixkaping
R
reactieve regelinstallatie
regel voor ontbrekende tabelovereenkomsten
reserve voor de aangewezen router
RIP
rondlooptijd
route-intrekking
routelek
routereflector
routering via meerdere paden met gelijke kosten
routeringsoscillatie
RPKI
S
samenvattende LSA
SDN-controller
SNMP
SNMPv3
softwaregedefinieerd netwerken
split horizon
standaardroute
streamingtelemetrie
stroomtabelregel
T
tellen tot oneindig
time-out voor een meetpakket
traceroute
transitprovider
trap
V
validatie van routeoorsprong
verbindingsbenutting
verbindingskosten
voorganger
voorlopige afstand
W
wijzigingsgestuurde update
Y
YANG
Z
zwart gat bij de bepaling van de pad-MTU
Over deze les
Door StudeliFout melden
Maak je eigen Studiemateriaal
Maak van je aantekeningen, slides en documenten Leermodules, Oefenvragen, Flashcards en 6 andere tools.