Routing and the Control Plane

Learn how routers decide where to send packets. Compute least-cost routes with link-state and distance-vector algorithms, then see how OSPF builds forwarding tables inside a network, how BGP connects tens of thousands of independent networks under business policy, and how an SDN controller installs forwarding rules from a central point. The material also covers ICMP with ping and traceroute, and the protocols operators use to monitor and configure their networks: SNMP, NETCONF and YANG.

IntermediateLesson 6 of 8 in Computer Networks Course

What you will learn

  1. Explain what the control plane of the network layer does, model a network as a weighted graph, and compute least-cost routes with the two classic families of routing algorithms.
    • Explain the control plane and model a network as a graph
      Separate routing from forwarding, compare per-router control with logically centralized control, and describe routing as a search for least-cost paths in a weighted graph.
    • Compute least-cost paths with the link-state algorithm
      Explain how link-state information is spread, run Dijkstra's algorithm step by step from one router, and turn the result into a forwarding table.
    • Compute routes with the distance-vector algorithm
      Apply the Bellman–Ford equation, follow how neighbors exchange distance vectors until the routes settle, and build a forwarding table from the result.
    • Handle link changes and compare the two approaches
      Trace how distance-vector routing reacts when a link becomes cheaper or more expensive, explain count-to-infinity and poisoned reverse, and compare link-state with distance-vector routing.
  2. Explain why Internet routing is organized into autonomous systems and how OSPF builds forwarding tables inside one of them, including large networks divided into areas.
    • Organize Internet routing into autonomous systems
      Explain why routing is split into routing inside a network and routing between networks, and describe the roles of autonomous systems, gateway routers and the two kinds of routing protocol.
    • Explain how OSPF builds forwarding tables
      Describe how OSPF routers discover neighbors, flood link-state advertisements, compute shortest paths and react to a failed link.
    • Scale OSPF with areas
      Explain how dividing a large network into OSPF areas limits flooding and computation, and describe the roles of the backbone, area border routers and AS boundary routers.
  3. Explain how BGP spreads reachability between autonomous systems, how routers choose among the routes they learn, and how business policy and security shape routing between networks.
    • Advertise routes between autonomous systems with BGP
      Describe BGP sessions, how a prefix advertisement travels from AS to AS, and the role of the AS-PATH and NEXT-HOP attributes and BGP's messages.
    • Choose among BGP routes and install them
      Apply BGP's route-selection rules, including hot-potato routing, and explain how a router combines BGP and its intra-AS protocol to build a forwarding-table entry.
    • Apply routing policy between providers, customers and peers
      Explain how business relationships between networks decide which routes an AS accepts, prefers and advertises, and why policy matters more between networks than inside one.
    • Recognize BGP failures and how networks defend against them
      Explain prefix hijacks and route leaks, and how filtering and route origin validation with RPKI limit them.
  4. Describe the architecture of a software-defined network and follow the messages through which a controller learns about the network and installs flow-table entries in switches.
    • Describe the SDN control-plane architecture
      Explain the defining features of software-defined networking, the layers of an SDN controller and its northbound and southbound interfaces, and where SDN is used.
    • Follow OpenFlow messages between the controller and switches
      Name the main OpenFlow messages, describe a flow-table entry, and trace how a controller reacts to a link failure by recomputing routes and updating switches.
  5. Interpret the messages of the Internet Control Message Protocol and use ping and traceroute to test reachability and discover the routers along a path.
    • Interpret ICMP messages
      Describe the purpose and format of ICMP, the most important message types and codes in IPv4 and IPv6, and the rules for when ICMP errors are sent.
    • Test reachability with ping and traceroute
      Explain how ping and traceroute use ICMP, read a traceroute output, and avoid common misreadings of its results.
  6. Describe the parts of a network management system and use SNMP for monitoring, and NETCONF with YANG for model-driven configuration of many devices.
    • Monitor devices with SNMP and MIBs
      Describe the network management framework, explain how SNMP reads and changes MIB objects, and compute link utilization from polled counters.
    • Configure networks with NETCONF and YANG
      Explain how NETCONF applies configuration changes as transactions, how YANG models describe device data, and how this approach compares with SNMP.

Routing and the Control Plane study guide

6 chapters

1

Compute routes with link-state and distance-vector algorithms

Routing turns a collection of links into usable end-to-end paths. A router needs a way to learn about the network, choose a path, and turn that choice into a local forwarding entry. Link-state and distance-vector routing solve this problem with different information. Work through their calculations, then follow what happens when a link changes and the routers temporarily disagree.

1.1 From a network path to a next hop

A router makes a local decision for every arriving datagram: which output link should carry it next? The data plane performs that lookup using the forwarding table. The control plane determines the table’s contents, using information about destinations and the network beyond the router.

Two ways to organize control

With per-router control, each router runs routing software and exchanges messages with other routers. OSPF and BGP use this arrangement. With logically centralized control, network-control software obtains a network-wide view and uses a controller to install forwarding rules in devices. This is the SDN approach. “Logically centralized” describes the control service seen by its users; the service can run on several physical servers.

Forwarding is a fast local operation, often implemented in hardware. Routing responds on a slower timescale to changes in connectivity, costs, and policy. A datagram does not wait for a new end-to-end route calculation at every hop. It follows the entries already installed.

Represent the network as a weighted graph

In a graph G=(N,E), nodes are routers and edges are links. A directly connected pair has link cost c(x,y). A missing direct link has cost ∞. For the worked graphs, costs are symmetric: c(x,y)=c(y,x). The operator chooses what cost represents: link speed, delay, money, or another useful measure.

Add the costs along a path. If A–B costs 3 and A–C and C–B each cost 1, the direct path costs 3 while A–C–B costs 2. A sends traffic for B to C. Counting links would give the wrong decision here; hop count equals path cost only when every link has cost 1.

Classify the algorithm by its information
PropertyLink-state routingDistance-vector routing
Starting informationComplete topology and link costsAttached-link costs and neighbors’ estimates
ComputationEach source computes paths on the graphEach router repeatedly compares routes through neighbors
Information exchangeLink descriptions are floodedEstimated destination costs go to neighbors

A global algorithm uses complete topology information. This does not require a single computer: OSPF runs a global link-state algorithm independently in each router. A decentralized algorithm builds its answer through local exchanges, as distance-vector routing does.

Other classifications describe when routes change. Static routes change slowly, often through manual edits. Dynamic protocols react to network changes. Load-sensitive costs follow current congestion; load-insensitive costs do not. OSPF and BGP are dynamic protocols whose ordinary route metrics do not track moment-to-moment load.

Connect routing to forwarding

An algorithm is the computation; a protocol supplies message formats, timers, and exchange rules. Dijkstra’s algorithm is a computation. OSPF is a protocol that supplies its input.

The final forwarding entry maps a destination prefix to an outgoing link. Each router chooses its own next hop, so the complete path emerges from the routers’ tables. During convergence, inconsistent tables can create loops; TTL eventually removes a looping IPv4 datagram. Between organizations, a good route must also satisfy policy: an operator can reject a low-cost path because it would carry traffic the operator has not agreed to carry.

Key Takeaways

  • The control plane builds forwarding state; the data plane applies it to arriving packets.
  • Path cost is the sum of link costs, which need not represent hop count.
  • “Global” describes an algorithm’s knowledge, not its physical location.
  • Consistent next-hop decisions create the end-to-end path.
  • Inter-AS policy can outweigh path cost.

1.2 Build a shortest-path tree with Dijkstra’s algorithm

In link-state routing, each router describes its attached links and floods that description through the network. Once the databases agree, every router has the same graph. Each router runs Dijkstra’s algorithm with itself as the source, so the shared input produces a different rooted tree at each router.

Keep tentative and final costs separate

For source u, D(v) is the cheapest cost to v found so far, and p(v) is its predecessor on that path. The set N′ holds routers whose least costs are final. Start with the source in that set, its direct neighbors at their link costs, and all other routers at infinity.

At each iteration, choose the smallest tentative cost outside N′ and add that router, w, to the set. For each neighbor v still outside, compare the existing estimate with a route through w:

D(v)=min⁡(D(v),D(w)+c(w,v)).

If the second route is cheaper, record w as the predecessor. Nonnegative link costs make this finalization safe. A value that has merely been updated is still tentative until its router joins N′.

Work from router A

Use these links: A–B 3, A–C 1, B–C 1, B–D 4, C–D 6, C–E 2, D–E 1, D–F 3, and E–F 5. Initially B has cost 3, C has cost 1, and D, E, and F have infinite cost.

Router addedUpdates to routers still outside the set
C, cost 1B becomes 2 via C; D becomes 7 via C; E becomes 3 via C
B, cost 2D becomes 6 via B
E, cost 3D becomes 4 via E; F becomes 8 via E
D, cost 4F becomes 7 via D
F, cost 7No routers remain

For example, adding E changes D because 3+1=4 is below 6. D was updated twice before it became final. Taking its first estimate of 7 as the answer would miss both improvements.

Recover paths and first hops

Follow predecessors backward: F ← D ← E ← C ← A. Reverse that sequence to obtain A–C–E–D–F. Its cost is 1+2+1+3=7. The final costs from A are B 2, C 1, D 4, E 3, and F 7.

A forwarding table stores the first hop, not the predecessor of the destination. Every path in this example starts A–C, so A’s next hop is C for all five destinations. The predecessor of F is D, but D is not A’s next hop.

Equal costs, work, and changing load

If two candidates tie for smallest cost, either can be finalized first. The least costs stay the same, although a single chosen path can differ. OSPF can preserve multiple equal-cost paths for load sharing.

The simple algorithm scans candidates at each of its n−1 iterations, giving O(n2) running time; a priority queue can improve this. Link-state flooding also consumes messages because changed link information must reach every router in its flooding scope.

Load-sensitive costs can create feedback. All routers see a lightly loaded path, move traffic to it, and make it expensive; the next calculation moves traffic back. Load-insensitive costs avoid this particular feedback. Randomizing calculation times can also reduce synchronized switching; routers that start at different times can otherwise drift into step.

Key Takeaways

  • Finalize the smallest tentative cost, then update its unsettled neighbors.
  • A tentative cost can decrease several times before it becomes final.
  • Follow predecessors backward to recover a path, then take its first hop.
  • Equal-cost ties can change chosen paths without changing least costs.
  • The simple implementation takes quadratic time.
  • Synchronized reactions to load-sensitive costs can make routes oscillate.

1.3 Learn routes from neighbors’ distance vectors

A router can learn useful paths without learning the entire graph. In distance-vector routing, it knows its attached-link costs and the latest cost estimates received from each neighbor. It uses those estimates to build its own distance vector, a list of estimated costs to all destinations.

Add the first link to the neighbor’s estimate

For a destination y≠x, the Bellman–Ford equation is

dx(y)=min⁡v{c(x,v)+dv(y)}.

Try every neighbor v. Add the cost of reaching that neighbor to the neighbor’s cost to the destination, then choose the smallest total. The minimizing neighbor becomes the next hop. The cost from a router to itself stays 0; it is not replaced by a route through a neighbor.

During the exchange, routers use estimates D in place of the final distances d. These estimates can change as information travels farther through the network.

Start, receive, recompute, advertise

At startup, a router records 0 to itself, direct-link costs to neighbors, and infinity to other destinations. It sends that vector to its neighbors. A new vector from a neighbor or a change to a local link triggers recomputation. If the router’s own vector changes, it advertises the new vector; otherwise it has no changed estimate to pass on.

The process is distributed, iterative, and asynchronous. Routers need not update in matching rounds. Information can still reach distant routers because each neighbor’s revised estimate becomes input to another calculation.

Compute a three-router example

Links A–B 4, B–C 1, and A–C 7 give these starting vectors, ordered by destination A, B, C:

RouterStarting distance vector
A(0, 4, 7)
B(4, 0, 1)
C(7, 1, 0)

After hearing B, A compares its two routes to C:

DA(C)=min⁡(4+1,7+0)=5.

It chooses B as next hop. C makes the matching calculation for A and obtains 5 through B. Another exchange leaves the vectors unchanged. With fixed link costs and correct operation, the routers have converged.

A’s forwarding entries are “B → B, cost 4” and “C → B, cost 5.” A knows that B advertises a cost of 1 to C. It does not need B’s complete path or a drawing of the links beyond B.

How RIP supplies the protocol

The Routing Information Protocol (RIP) implements distance-vector routing with hop count. Each link costs 1, the largest usable path is 15 hops, and 16 means unreachable. RIP sends periodic updates every 30 seconds over UDP port 520. A route that has not been refreshed for 180 seconds expires.

Periodic messages belong to the protocol; the underlying algorithm’s changed-vector rule describes when there is new information to propagate. RIP also uses triggered updates to send changes sooner. Confusing these levels can lead to the claim that a stable RIP router sends no messages at all.

Distance-vector estimates are not calculated once and then frozen. A neighbor’s new claim can change the preferred next hop even when every local link stays unchanged. Conversely, receiving a message need not change the router’s own vector if none of the new totals improves or replaces its selected routes.

Key Takeaways

  • Compare each first-link cost plus the neighbor’s destination estimate.
  • A router’s cost to itself remains 0.
  • A distance vector records destination costs without revealing the full topology.
  • Changed inputs trigger repeated calculations until estimates settle.
  • RIP adds periodic messaging and a maximum usable distance of 15 hops.

1.4 Follow a cost change and break a two-router loop

A distance-vector update can describe a path that depends on the router receiving it. Without that dependency being visible, two routers can each believe the other has a usable route. This is why an increase in link cost can be harder to spread than a decrease.

A cheaper link spreads quickly

Let A–B cost 2, B–C cost 1, and A–C cost 20. B reaches A directly at cost 2; C reaches A through B at cost 3. If A–B falls to 1, B advertises 1 and C changes its cost to 2. When C advertises 2 back, B keeps its direct route. The improvement settles after these two changed updates.

An expensive link exposes stale information

Now start again from costs 2, 1, and 20, and raise A–B to 40. B still has C’s earlier advertisement of 3 to A. It chooses C because 1+3=4 is below 40. C still sends to B. Datagrams for A now bounce between B and C until their TTL expires.

C hears B’s cost 4 and computes 5. B hears 5 and computes 6. The estimates keep rising even though neither is describing an independent path to A. This is count-to-infinity: bad news advances through a chain of misleadingly small estimates.

Here an alternative eventually breaks the loop. When B advertises 20, C compares its direct cost 20 with 21 through B and selects its direct link. B then settles at 21 through C. Without a usable alternative or a finite infinity value, the counting can continue much longer.

Advertise the dependency with poisoned reverse

With poisoned reverse, a router tells the neighbor it uses for a destination that its distance to that destination is infinite. Initially C uses B to reach A, so C advertises infinity to B. B can no longer mistake C for an independent alternative.

After the cost increase, B therefore chooses its direct cost 40. C hears 40 and selects its direct link at cost 20. C can now advertise 20 to B, and B chooses cost 21 through C. The advertised value depends on the recipient: C can report its real cost to other neighbors while poisoning the route toward B when B is its next hop.

Split horizon omits such a route from the update instead of advertising infinity. Poisoned reverse prevents this two-router dependency loop, but longer loops can still occur. Triggered updates speed the spread of changes. RIP also defines infinity as 16, limiting both counting time and usable network size.

Compare the two routing families
FeatureLink-stateDistance-vector
MessagesLink descriptions flooded throughout the scopeDestination estimates exchanged with neighbors
ConvergenceLocal shortest-path calculation after database updatesRepeated exchanges; bad news can travel slowly
Faulty informationA router can misstate its attached linksA router can falsely claim low cost to many destinations

A full link-state dissemination round has message work on the order of n⋅e for n routers and e links. The simple local calculation is quadratic. Distance-vector message work depends on how many successive estimates change; neighbor-only communication does not guarantee quick convergence.

OSPF and IS-IS use link-state routing. RIP uses distance vectors. BGP is a related path-vector protocol: its advertised AS sequence exposes dependencies and lets routers reject paths containing their own AS number.

Key Takeaways

  • A stale neighbor estimate can hide a route that returns through the receiving router.
  • Count-to-infinity is repeated growth of mutually dependent estimates.
  • Poisoned reverse advertises infinity toward the next hop for that destination.
  • Poisoned reverse blocks two-router loops; longer loops remain possible.
  • Link-state spreads topology; distance-vector spreads destination estimates.
  • A false distance-vector claim can propagate well beyond the faulty router.
2

Route inside an autonomous system with OSPF

An operator can choose how routing works inside its own network, but it must also exchange traffic with other operators. Autonomous systems provide that boundary. Inside one system, OSPF spreads link information and computes least-cost paths. Its neighbor relationships and areas make that process manageable as a network grows, while gateway routers connect the internal paths to destinations elsewhere.

2.1 Divide routing into networks with their own policies

The Internet is too large and too independently managed to treat every router as a node in one flat routing system. Each organization needs control of its own internal network while still offering usable routes to other organizations. Autonomous systems provide that division.

Identify the administrative boundary

An autonomous system, or AS, is a group of routers under one administration that presents a coherent routing policy to the outside. Public AS numbers, or ASNs, identify these systems globally. Regional Internet registries distribute AS number resources. The original number space was 16 bits, up to 65,535; modern ASNs use 32 bits.

An AS is a routing domain, while an ISP is a business. A university or content provider can operate an AS, and one ISP can operate several. Treating those terms as interchangeable hides the actual policy boundaries.

Use different protocols for different jobs
Routing taskMain questionTypical protocols
Intra-AS routingHow do I reach a destination inside our network?OSPF, IS-IS, RIP, EIGRP
Inter-AS routingWhich neighboring network offers an acceptable route?BGP

An interior gateway protocol (IGP) supplies internal routes. Within a routing domain, routers use a common IGP so they can exchange the information it needs. Different ASes can choose different IGPs. A provider using IS-IS can connect to a university using OSPF because their external routing exchange uses BGP.

The hierarchy serves two needs. It reduces the amount of worldwide detail that internal routers must process, and it preserves administrative autonomy. A local link change does not need to expose the complete internal topology to every other AS.

Combine an exit choice with an internal path

A gateway router connects to another AS. For an external destination, BGP identifies a usable route and its next-hop gateway address. The internal protocol supplies the path toward that address. These decisions combine to produce the forwarding entry used for an arriving packet.

Suppose router R learns that 198.51.100.0/24 is reachable through gateway G. OSPF says the path from R to G begins through neighbor H. R’s forwarding entry for the external prefix uses the link to H. G is the exit from the AS, while H is R’s immediate next hop; those roles need not belong to the same router.

Recognize when one exit is enough

A small customer with one external connection has no choice of exit. A default IPv4 route, 0.0.0.0/0, can send external traffic toward that connection. Learning every Internet route would not create an alternative exit.

With several gateways, reachability information matters: one gateway may offer a prefix that another does not, or policy may favor one provider. BGP distributes the route choices; the IGP still carries packets to the chosen exit.

Inside one AS, one operator can choose link costs to meet internal performance goals. Across ASes, cost competes with agreements about paid transit, peers, and which traffic an operator will carry. This is why choosing an Internet route involves more than extending a shortest-path calculation across the next administrative boundary.

Key Takeaways

  • An AS is a routing domain with one external policy, not necessarily an ISP.
  • An IGP finds internal paths; BGP exchanges routes across AS boundaries.
  • An external forwarding entry combines a BGP route with an internal path to its next hop.
  • A single-exit customer can use a default route.

Open Shortest Path First (OSPF) is a link-state IGP. Each router learns the topology within its area, runs Dijkstra’s algorithm from itself, and derives routes to subnets. OSPFv2 serves IPv4; OSPFv3 was designed for IPv6.

Choose costs and discover neighbors

The operator sets link weights. All weights equal to 1 produce minimum-hop routes. An illustrative inverse-speed rule with a 10 Gbit/s reference is

weight=10000link speed in Mbit/s.

It gives weights 1, 10, and 100 for 10 Gbit/s, 1 Gbit/s, and 100 Mbit/s links. Weight is a configured routing measure, not a distance in kilometers.

Hello packets discover and maintain neighbors. A common LAN setting sends Hellos every 10 seconds and uses a 40-second dead interval. Missing a single Hello is therefore different from declaring the neighbor dead. Neighboring routers synchronize databases using Database Description packets, Link State Requests, Link State Updates, and Link State Acknowledgments. Routers with synchronized databases form an adjacency.

Flood fresh link descriptions

A link-state advertisement (LSA) describes routing information. A router-LSA records a router’s links and costs. LSAs travel in Link State Update packets; an LSA is the advertised information, not the name of every OSPF packet.

Changed links trigger fresh advertisements. Routers also refresh their own LSAs at least every 30 minutes. An LSA at the maximum age of one hour is removed. Sequence information and age let routers distinguish fresh descriptions from old ones.

OSPF is carried directly in IP using protocol number 89. It supplies acknowledgments and retransmissions itself. On broadcast networks, 224.0.0.5 reaches all OSPF routers and 224.0.0.6 reaches the designated routers.

Reduce LAN adjacencies

A LAN elects a designated router (DR) and a backup designated router (BDR). Other routers form full adjacencies with those two, instead of every pair becoming adjacent. The DR advertises the shared LAN in a network-LSA.

For six routers, a full mesh would need 6×5/2=15 adjacencies. Four ordinary routers each connect logically to the DR and BDR, plus one DR–BDR adjacency: 4×2+1=9. Neighbors can hear one another without all becoming fully adjacent.

Recalculate after a failed link

Consider links A–B 3, A–C 1, B–C 1, B–D 4, C–D 6, C–E 2, D–E 1, D–F 3, and E–F 5. A initially reaches E at cost 3, D at 4, and F at 7 through C and E.

When C–E fails, C and E flood new router-LSAs that remove the link. Recalculation gives A costs B 2, D 6, E 7, and F 9. The paths to D and F now use C–B–D. A’s first hop still stays C: a changed complete path does not require a changed first forwarding hop.

OSPF supports authenticated routing messages and equal-cost multipath (ECMP). Cryptographic authentication is stronger than a plain-text password; it checks authorized message origin and integrity. ECMP lets a router retain multiple equal-cost paths. These features operate on link-state information, not on exchanged tables of estimated destination distances.

Key Takeaways

  • OSPF floods LSAs and each router computes its own routes.
  • Configured weights determine least-cost paths.
  • Hellos maintain neighbors; database synchronization establishes adjacencies.
  • OSPF uses IP protocol 89 and supplies its own reliable flooding.
  • A DR and BDR reduce full adjacencies on a broadcast LAN.
  • After a failure, the path and cost can change while the first hop stays the same.
  • OSPF can authenticate messages and retain equal-cost paths.

2.3 Keep detailed topology inside OSPF areas

A router in a large AS need not process every internal link as part of one detailed graph. OSPF areas divide the link-state database and shortest-path work. Routers retain local detail and learn routes describing destinations beyond their own area.

Connect areas through the backbone

The backbone is area 0, also written 0.0.0.0. Other areas attach to it. Traffic between two non-backbone areas travels to the backbone and then into the destination area.

An area border router (ABR) connects areas, including the backbone. It keeps a separate database for each attached area and advertises routes between them. Information about a remote subnet can cross the boundary without exposing all the remote area’s routers and links. Summarization can also combine suitable prefixes; it does not require every remote subnet to disappear into one aggregate.

An AS boundary router (ASBR) introduces routes from outside OSPF’s domain, such as routes learned from another AS. An ABR crosses an area boundary; an ASBR introduces external routing information. One device can hold both roles.

Match advertisements to their purpose
LSA typeInformationOriginating role
1, router-LSAA router’s links within an areaEach router
2, network-LSAA shared broadcast networkThe DR
3, summary-LSAA subnet reachable in another areaAn ABR
4, summary-LSAHow to reach an ASBRAn ABR
5, AS-external-LSAA destination from outside the OSPF domainAn ASBR

Types 1 and 2 describe the detailed area graph. Types 3 and 4 carry inter-area reachability information. Type 5 normally spreads through the AS, with special area types restricting external advertisements.

Trace an inter-area packet

A host’s packet starts in area 7 and is destined for area 9. It first follows routes inside area 7 to an ABR, crosses area 0 to an ABR attached to area 9, and then follows routes inside area 9. This is a hierarchy inside one AS; crossing an area boundary does not turn the packet into inter-AS traffic.

An internal router has all interfaces in one area. A backbone router has at least one interface in area 0. An ABR is also a backbone router, so the role names are not mutually exclusive.

Understand what a local failure changes elsewhere

Dividing roughly 400 routers into four areas of about 100 can greatly reduce each router’s detailed graph, while adding inter-area routes. The exact database size also depends on border routers and advertised networks.

If a link repeatedly fails inside one area, its detailed LSAs and full shortest-path recomputation stay in that area. If the change also alters a destination’s advertised cost or reachability, the ABR sends changed summaries. Routers elsewhere update the affected inter-area routes. Areas therefore limit the detail and computation that spread; they do not hide every effect of a failure.

Less detail has a cost. An inter-area route follows the area hierarchy and may differ from the globally least-cost route through a flat graph of the entire AS. The operator gains smaller databases and more contained changes while giving up some freedom in path choice.

Key Takeaways

  • Area 0 carries traffic between non-backbone areas.
  • ABRs exchange inter-area reachability; ASBRs introduce external routes.
  • Router and network LSAs describe an area’s detailed graph.
  • Areas contain detailed flooding, while changed summaries can affect other areas.
  • An OSPF area is a subdivision of an AS.
3

Route between networks with BGP

A route across the Internet crosses networks with different owners and priorities. BGP spreads promises of reachability and lets each operator decide which promises to accept and pass on. Follow an advertisement, compare competing routes in order, and connect the winning route to a forwarding interface. Business relationships explain many choices; filtering and origin validation help contain mistakes and attacks.

3.1 Follow a BGP advertisement across autonomous systems

BGP-4 exchanges reachability for destination prefixes. An advertisement says that the announcing network offers a route toward that prefix. Other networks can accept it, rank it against alternatives, or refuse it according to policy.

Establish a session

BGP speakers exchange messages over a long-lived TCP connection using port 179. eBGP joins speakers in different ASes; iBGP joins speakers in the same AS. Internal sessions distribute external reachability within the AS, and need not correspond to direct physical links.

The basic iBGP design uses a full mesh between BGP speakers. Larger networks can use route reflectors to reduce the number of sessions. iBGP does not replace the IGP: the IGP still supplies internal paths needed to reach BGP next hops.

Add the AS number as a route travels outward

AS 64503 originates 203.0.113.0/24. Its advertisement to AS 64502 has AS-PATH “64503.” AS 64502 distributes the route internally over iBGP, then advertises it to AS 64501 with AS-PATH “64502 64503.” External propagation prepends the advertising AS’s number; ordinary internal distribution does not add another copy of that number.

A BGP route pairs the prefix with attributes. AS-PATH records the sequence of ASes, most recent first. NEXT-HOP identifies the router address toward which traffic should be sent, normally an interface at the neighboring gateway. An internal speaker uses the IGP to resolve a path to that address.

Reject an AS-level loop

A speaker rejects a route whose AS-PATH contains its own AS number. If AS 64501 receives “64502 64501 64503,” accepting it would send traffic along an AS sequence that returns to 64501. Carrying this dependency makes BGP a path-vector protocol and avoids the plain distance-vector count-to-infinity problem.

An AS path is not a list of every router on the packet path. Two AS hops can include many physical links, and policies can select a longer AS path. Its length alone says little about measured delay.

Interpret the basic messages
MessageJob
OPENStart a session and exchange settings, including hold time
UPDATEAnnounce reachability or withdraw previously announced routes
KEEPALIVEMaintain a quiet session
NOTIFICATIONReport an error and close the session

The standard suggests a hold time of 90 seconds and keepalives every 30 seconds. Negotiated settings can differ. A speaker withdraws routes learned over a session when that session fails; keeping a TCP connection open is different from proving that every advertised destination works.

After the initial exchange, BGP sends incremental changes instead of periodically sending the complete table. Rate limiting can reduce repeated announcements for one prefix; the standard suggests 30 seconds between such eBGP advertisements.

TCP provides ordered delivery between the two speakers. BGP’s own attributes, policy rules, and update processing determine which routes are retained and propagated. Reliable transport by itself supplies no proof that a neighbor is entitled to originate the advertised prefix.

Key Takeaways

  • BGP advertises prefixes and attributes over TCP port 179.
  • eBGP crosses AS boundaries; iBGP spreads routes inside an AS.
  • An external advertisement prepends the advertising AS number.
  • A speaker rejects an AS-PATH containing its own AS number.
  • Updates carry changes after the initial table exchange.

3.2 Choose a BGP route before finding its output interface

Several gateways may offer a route to the same prefix. A BGP speaker first applies import policy, then compares accepted, usable routes in a defined order. It stops at the first decisive difference; a later advantage cannot undo an earlier preference.

Compare attributes in order
  1. Prefer the highest LOCAL_PREF, set by the local operator.
  2. Prefer the shortest AS-PATH.
  3. Prefer the lowest ORIGIN value: IGP, then EGP, then INCOMPLETE.
  4. Prefer the lowest MED among routes from the same neighboring AS.
  5. Prefer an eBGP-learned route over an iBGP-learned route.
  6. Prefer the lowest IGP cost to the NEXT-HOP.
  7. Prefer the lowest advertising BGP identifier when earlier comparisons tie.

Router implementations can add steps such as vendor-specific local weight. LOCAL_PREF is distributed inside the AS and stays there. MED lets a neighboring AS suggest a preferred entry point; MED values from unrelated neighboring ASes are not compared by the ordinary rule.

Compare two exits

R in AS 64501 learns two routes over iBGP to 203.0.113.0/24. G1 offers AS-PATH “64502 64503” at IGP cost 3; G2 offers “64504 64503” at IGP cost 5. Both have LOCAL_PREF 100 and equal ORIGIN. The paths each contain two ASes. MED does not choose between these different neighboring ASes, and both routes are internal advertisements.

The IGP cost therefore decides: R chooses G1 because 3<5. This is hot-potato routing: send traffic out through the least costly internal exit among otherwise equal routes.

If routes through AS 64504 receive LOCAL_PREF 200, G2 wins immediately. Its higher internal cost no longer matters. With equal LOCAL_PREF, a path containing only “64503” would beat both two-AS paths before hot-potato routing was considered.

Resolve the winning next hop

BGP has chosen a route through G1, but R may have no direct link to G1. OSPF supplies the least-cost internal path to that next-hop address. If the path starts on interface I, the forwarding entry becomes “203.0.113.0/24 → I.” The decision needs both protocols: BGP selects external reachability, and the IGP resolves internal delivery toward it.

Different internal routers can have different costs to G1 and G2, so otherwise equal BGP choices can lead them to use different exits. Independent policies at the other end can also make the reverse packet path different from the forward path. Internet routing is often asymmetric.

Apply the same selection to anycast

With IP anycast, multiple service locations advertise the same prefix. Routers choose among the advertisements through ordinary BGP selection. A client reaches the instance preferred by routing policy, AS path, and internal costs, which need not be the geographically closest instance.

This works well for short exchanges such as DNS queries. A routing change during a long TCP connection can send later packets to another instance that lacks the connection’s state.

Key Takeaways

  • BGP stops at the first decisive comparison.
  • LOCAL_PREF outranks AS-PATH length.
  • MED normally compares entry points offered by the same neighboring AS.
  • Hot-potato routing uses internal cost only after earlier preferences tie.
  • The IGP resolves a selected BGP next hop into an outgoing interface.
  • Anycast proximity is determined by routing, not geography.

3.3 Use business relationships to control transit

Advertising a route is an invitation to send traffic toward it. An operator’s export policy therefore determines which traffic the network offers to carry. Customer, provider, and peer relationships explain the usual rules.

Distinguish transit from peering

A customer pays a provider for transit to and from the rest of the Internet. Two peers exchange traffic for themselves and their customers, often without settlement payments. Networks often establish peering at an Internet exchange point (IXP).

Peering usually does not provide a route to everything the peer can reach through its own providers. That wider service is transit. A peer relationship describes an agreement about traffic, not simply a physical cable between routers.

Separate import and export decisions

Import policy chooses which received advertisements to accept and what preference to assign them. Export policy chooses which routes to advertise to each neighbor. A route can be accepted and used locally without being offered to every other neighbor.

Usual import preferences favor customer routes, then peer routes, then provider routes. LOCAL_PREF can encode that order. Customer traffic earns revenue, peer traffic usually avoids transit charges, and provider traffic incurs transit cost. This preference can outweigh AS-PATH length.

Apply the usual export rules
Route learned fromAdvertise to customersAdvertise to peersAdvertise to providers
CustomerYesYesYes
PeerYesNoNo
ProviderYesNoNo

An AS also advertises its own destinations according to its agreements. The table describes the common commercial pattern; operators implement policy through explicit filters and preferences.

Advertising a customer route widely attracts traffic toward the paying customer. Restricting peer- and provider-learned routes to customers avoids offering unpaid transit between outside networks. The relevant direction is where the route was learned and to whom it will be advertised, not which direction one packet happens to travel.

Follow a multihomed customer

Customer X, AS 64510, has providers B and C. X announces its own prefix to both for reachability and resilience. It accepts routes from both, but keeps a route learned from B out of advertisements to C. It also keeps C’s routes out of advertisements to B. Otherwise one provider could send traffic through X to destinations behind the other provider.

For a peer example, A and B are peers and W is A’s customer. B can use the route “A W” and export it to B’s customers. B withholds that peer-learned route from another peer C. Exporting it to C would offer transit between peers through B.

Inside one AS, a single operator can optimize internal costs. Between ASes, independent operators control price, traffic obligations, and acceptable counterparties. A missing advertisement can be an intentional refusal to carry traffic, even when a physical path exists.

Key Takeaways

  • Import policy filters and ranks received routes; export policy controls advertisements.
  • Transit provides wider reachability than ordinary peering.
  • Customer-learned routes are usually exported to all neighbor types.
  • Peer- and provider-learned routes are usually exported only to customers.

3.4 Limit hijacks and leaks without trusting every announcement

Basic BGP advertisements do not prove prefix ownership or authenticate the complete AS-PATH. An incorrect announcement can spread through many networks unless policy and validation stop it. Two important failures are prefix hijacks and route leaks.

Recognize what goes wrong

A prefix hijack announces an unauthorized prefix or a more specific part of someone else’s prefix. Routers accepting the route can send traffic toward the wrong origin. Once routes for different prefix lengths are installed, forwarding uses longest-prefix matching. A /24 route inside a /22 wins for matching addresses, even if the /22 has a shorter AS-PATH. BGP comparisons between routes to one prefix and forwarding comparisons between different prefixes are separate decisions.

A route leak exports a route beyond its intended policy boundary. For example, a customer passes provider-learned routes to another provider and becomes an unintended transit network. The prefix origin can be legitimate while the propagation is wrong.

Learn from a real incident

On February 24, 2008, Pakistan Telecom, AS 17557, announced 208.65.153.0/24 as part of a domestic YouTube block. Its provider propagated that more specific route internationally. Much of the traffic for those YouTube addresses was drawn toward Pakistan.

The widely visible incident ran from 18:47 to 21:01 UTC, a little over two hours. YouTube announced the /24 itself and then two /25 prefixes while trying to recover traffic. The incident ended when the provider withdrew the false route. A locally intended change had become an international reachability failure because export filtering failed.

Filter before a mistake spreads

A provider can accept only the prefixes a customer is authorized to originate. A maximum-prefix limit can stop a session that suddenly announces far more routes than agreed. Many networks also filter IPv4 prefixes longer than /24 and IPv6 prefixes longer than /48. Such filters limit what advertisements spread; a technically more specific route has an effect only where it is accepted.

Check the authorized origin with RPKI

The Resource Public Key Infrastructure (RPKI) lets address holders publish signed Route Origin Authorizations (ROAs). A ROA names the allowed origin ASN, a prefix, and the maximum allowed prefix length.

Suppose AS 64503 is authorized for 203.0.113.0/24 with maximum length /24:

AnnouncementOrigin-validation stateReason
203.0.113.0/24, origin 64503ValidPrefix length and origin are authorized
203.0.113.0/24, origin 64510InvalidOrigin is unauthorized
203.0.113.128/25, origin 64503InvalidPrefix is longer than permitted
198.51.100.0/24, no covering ROANot foundNo covering authorization is available

If several validated authorizations cover a route, one matching origin and length authorization makes it valid. With covering authorizations but no match, the route is invalid. Networks choose how to act on these states; rejecting invalid routes blocks many unauthorized origins. “Not found” means an authorization is absent, not that a wrong origin has been demonstrated.

Origin validation checks the final origin ASN, not every transit AS or the export relationship. Forging a path that ends with an authorized origin can therefore pass this check, and a leak can retain a valid origin. BGPsec adds path-signing mechanisms, but origin validation, route filters, and monitoring remain distinct defenses.

Key Takeaways

  • Longest-prefix matching lets an accepted unauthorized more specific route attract traffic.
  • A leak can propagate a legitimate origin beyond its intended policy boundary.
  • A ROA authorizes an origin ASN and maximum prefix length.
  • Valid, invalid, and not found are distinct origin-validation results.
  • Origin validation does not validate the full AS-PATH or export policy.
4

Explain how an SDN controller builds forwarding tables

A routing decision can run in software outside the switches that forward the packets. In software-defined networking, applications use a controller’s network view to decide what rules to install. The controller communicates those rules to switches and reports changes back to the applications. Tracing a failed link shows how topology information, path calculation, and flow-table updates fit together.

4.1 Move control decisions into applications and a controller

Software-defined networking (SDN) separates packet forwarding from the software that decides network behavior. Switches apply flow rules, while applications use a controller to read network state and install the rules they need. The arrangement makes control programmable.

Identify the three components

Data-plane switches perform match-plus-action forwarding. A flow can match fields from several layers, including Ethernet addresses, IP addresses, and transport ports. Actions can forward, drop, modify, or send a packet to the controller.

The controller maintains network state and communicates with devices. Network-control applications make decisions, such as computing a route or choosing a load-balancing rule. A routing application can still use Dijkstra’s algorithm. SDN changes the location and interfaces of control, without requiring a new shortest-path method.

The defining features work together: flow-based forwarding, separate control and data planes, control functions outside switches, and software applications that program network behavior.

Follow the controller’s layers
Controller partMain job
Communication layerExchange commands, events, and statistics with devices
Network-wide state managementTrack links, switches, hosts, and installed flow state
Application interfaceLet applications read state, request changes, and subscribe to events

The southbound interface connects the controller to devices. OpenFlow is a well-known example; management protocols such as SNMP and NETCONF can also support device communication. The northbound interface connects applications to the controller, often through a REST API. “North” and “south” describe software roles, not physical positions in a network rack.

Distinguish logical from physical centralization

Applications see a coherent controller service with a network-wide view. That service can run on one server or a replicated cluster. A cluster can share load and continue after one server fails, provided its state sharing and failover work correctly. Logical centralization does not require one physical machine.

A single-server controller is a single point of failure for its control service. Replication reduces that exposure but leaves the controller a critical part of the network. Applications depend on an accurate view of the topology to produce useful rules.

Trace a routing request

Suppose a controller records the available links between four switches. A routing application reads that topology through the northbound API and computes a least-cost path. It asks the controller to install the corresponding forwarding entries. The controller translates the request into southbound messages to the affected switches. Later packets follow those installed entries locally.

Changing a routing application can therefore change network behavior without changing each switch’s built-in routing software. The same forwarding hardware can support routing, access control, or load balancing according to the installed rules.

SDN is used within organizational networks such as data centers and private wide-area networks. Google’s B4 is an example of centralized control for a private network connecting data centers. ONOS and OpenDaylight are examples of open-source controller platforms. At boundaries between independent networks, BGP still exchanges reachability; SDN control inside an AS and BGP between ASes can operate together.

Key Takeaways

  • Switches apply flow rules; applications decide which rules the network needs.
  • The controller joins device communication, shared state, and application interfaces.
  • Northbound interfaces face applications; southbound interfaces face devices.
  • One logical controller can run on multiple servers.
  • SDN can reuse Dijkstra’s algorithm and coexist with BGP.

4.2 Update switch rules with OpenFlow

OpenFlow carries commands and events between a controller and switches. It uses TCP, with registered port 6653, and can protect the connection with TLS. The controller needs both ways of communicating: it changes forwarding state and receives evidence that the state or topology has changed.

Read a flow entry

A flow entry has match fields, a priority, counters, actions, and timeouts. In a table, the highest-priority matching entry controls the packet’s handling. A broad match can therefore lose to a more specific rule with a higher priority.

In OpenFlow 1.3, a lowest-priority table-miss entry can handle a packet that matches no ordinary entry. Its action can send the packet to the controller. With no table-miss entry, an unmatched packet is dropped by default. A miss alone does not require a packet-in message.

Match messages to their jobs
DirectionMessage or operationJob
Controller to switchFeatures, configurationLearn capabilities or read and change configuration
Controller to switchFlow-modAdd, modify, or delete flow entries
Controller to switchPort-modChange a port’s configuration
Controller to switchRead-state requestsObtain statistics and counters
Controller to switchPacket-outSend a specified packet through the switch
Switch to controllerPort-statusReport a port-state change
Switch to controllerFlow-removedReport removal of a flow entry
Switch to controllerPacket-inDeliver a packet or header because a rule requests it

Flow-mod and port-mod are both ways to modify switch state, but only flow-mod edits forwarding entries. Packet-out handles a particular packet; it does not by itself install a rule for later packets.

Repair paths after a failure

Take switches S1 through S4. The S1–S2 link fails while another route through S3 and S4 remains available.

  1. S1 detects its port going down and sends port-status.
  2. The controller removes the failed link from its network-state view.
  3. The routing application receives the event through its northbound subscription.
  4. The application recomputes paths on the revised topology.
  5. A flow-table computation component turns those paths into switch rules.
  6. The controller sends flow-mod messages to the switches whose entries must change, such as S1, S3, and S4.

The reporting switch supplies an event; it does not compute a network-wide repair on its own. The application also needs rules installed at the affected switches, not just a new path stored in the controller.

Install before traffic or react to its first packet

With proactive installation, entries are ready before packets arrive. With reactive installation, a configured action sends a new flow’s first packet to the controller in packet-in. The controller can arrange a rule and use packet-out when it needs to release a packet.

Reactive setup adds delay to the first packet and work for the controller. Once the entry exists, subsequent matching packets stay in the data plane. The controller handles selected events and packets, not every packet in every flow. Expiring entries can later generate flow-removed notifications, letting applications track changes to installed state.

Key Takeaways

  • A flow table uses the highest-priority matching entry.
  • An unmatched packet is dropped when no table-miss entry handles it.
  • Port-status reports a change; flow-mod changes flow-table entries.
  • A path repair needs updated topology, a new computation, and installed rules.
  • Reactive setup involves the controller for selected packets, then normal forwarding stays local.
  • Packet-out sends a packet; it does not install a lasting flow entry.
5

Report errors and test paths with ICMP

A packet can fail to arrive even when its destination address is correct. ICMP reports some of these failures and supports tests of reachability and paths. Ping measures replies from one target; traceroute uses limited packet lifetimes to reveal responding routers along a route. Reading either test requires care: a missing reply and a slow reply can have several causes, and each RTT includes a return journey.

5.1 Read ICMP reports and preserve path MTU discovery

ICMP carries network-layer reports and tests inside IP datagrams. ICMPv4 uses IPv4 protocol number 1. Its messages have a type, a code, and a checksum. The type gives the broad purpose; the code refines it.

Connect an error to the packet that caused it

An ICMPv4 error includes the original IP header and at least the first 8 bytes of the original payload. That quotation usually supplies the transport information needed to identify the affected flow. The error goes toward the original sender, which can then relate the report to a packet it sent.

ICMPv4 typeMeaningUseful code
0Echo reply0
3Destination unreachable0 network, 1 host, 2 protocol, 3 port, 4 fragmentation needed
5RedirectCode refines the redirect
8Echo request0
11Time exceeded0 for TTL expired in transit
12Parameter problemCode refines the header problem

Type 4, source quench, is deprecated and is not a modern congestion-control mechanism.

Work from the failure to its report

A router that reduces TTL to 0 discards the datagram and reports time exceeded. A router with no route can report network unreachable. A destination host receiving UDP for an unused port can report port unreachable. These are different failures: reaching the host does not guarantee reaching a listening application.

ICMP errors are not reliable delivery receipts. Filtering, message loss, or rate limiting can prevent a report from reaching the sender. An unanswered test therefore leaves several possible explanations.

IPv4 suppresses errors about another ICMP error, about broadcast or multicast traffic, and about fragments other than the first. These rules prevent error cascades and excessive replies. Devices also rate-limit error generation.

Distinguish ICMPv6

ICMPv6 uses IPv6 next-header value 58. Its error types are 1 destination unreachable, 2 packet too big, 3 time exceeded, and 4 parameter problem. Echo request and reply are types 128 and 129. Neighbor Discovery also uses ICMPv6 and takes over IPv6’s neighbor-resolution role from ARP.

IPv6 error rules include multicast exceptions: Packet Too Big can be sent in response to a multicast packet, and certain unknown-option errors can be as well. Applying IPv4’s blanket multicast suppression to ICMPv6 would break required behavior.

Follow path MTU discovery

For classic IPv4 path MTU discovery, the sender sets Don’t Fragment. A router that meets a smaller outgoing-link MTU drops an oversized datagram and returns type 3, code 4, reporting the next-link MTU. The sender can reduce the size of later packets.

For example, an IPv4 datagram of 1,500 bytes reaches a link with MTU 1,400 bytes while Don’t Fragment is set. The router drops it and reports fragmentation needed with MTU 1,400. The sender adjusts its IP packet size; the 1,400-byte value includes the IP header, so it is not the maximum application payload.

IPv6 routers never fragment forwarded packets. They return Packet Too Big so the source can adjust. Blocking all ICMP removes this feedback and can create a path MTU black hole: small packets work while larger ones disappear. Selective filtering preserves the messages needed for network operation.

Key Takeaways

  • ICMP type and code identify a report’s purpose and detail.
  • ICMPv4 errors quote enough of the original packet to help identify the flow.
  • TTL expiry, a missing route, and an unused UDP port produce different reports.
  • ICMPv6 has its own type values and multicast error exceptions.
  • Path MTU discovery depends on fragmentation-needed or Packet Too Big feedback.
  • A missing reply can result from filtering or rate limiting as well as failure.

5.2 Use ping and traceroute without overreading their results

Ping asks a target to reply. Traceroute uses probes that expire at successive hops to find responding routers along the forward path. Both report round-trip measurements, which combine outward travel, reply generation, and return travel.

Read a ping result

For IPv4, ping sends echo requests, type 8 code 0, and receives echo replies, type 0. Each successful exchange provides an RTT. If three of four probes receive replies, one of four is unanswered: the observed loss is 25%.

A reply establishes that an exchange with the target worked at that time. No reply can mean a failed target or path, but it can also mean filtered or rate-limited echo messages. Ping tests these messages, not every application protocol that might use the host.

Reveal successive hops with limited TTL

Traceroute first sends a probe with TTL 1. The first router decrements it to 0, discards it, and can return ICMP time exceeded. TTL 2 reaches the next router before expiring. Increasing TTL repeats this process farther along the path. The source records the address and elapsed time for each reply.

Classic Unix traceroute uses UDP probes to unlikely destination ports, starting at 33434. At the destination, port unreachable signals arrival. Windows tracert uses echo requests and recognizes an echo reply at the destination. Three probes at each TTL are common; separate probes can follow different load-balanced paths.

Interpret a complete trace
HopResponding addressRTT
1192.168.1.11 ms
2198.51.100.19 ms
3198.51.100.7712 ms
4203.0.113.995 ms
5203.0.113.80, destination97 ms

The destination answers at hop 5. The measured RTT rises by 95−12=83 ms from hop 3 to hop 4 and remains high afterward. That is consistent with a slower or longer segment near that point, but the subtraction is not the one-way delay of the intervening link. The replies are different packets, may use different return paths, and include different processing and queuing delays. No link length follows from these RTTs alone.

Explain silence and unusually high middle-hop RTTs

A line reading “* * *” means the probes at that TTL received no timely reply. If later hops answer, packets are getting farther through the network. The silent router may forward normally while suppressing its own ICMP replies.

A middle router can also show a higher RTT than later routers. Creating an ICMP reply can receive lower priority than forwarding traffic, so one slow control-plane response does not establish a slow forwarding link. Persistent increases that continue to later hops deserve different attention from an isolated spike.

Keep the path’s limits in view

Traceroute reveals responding router interfaces, not a list of AS numbers. Mapping those addresses to the networks announcing them is an extra step. The trace also leaves the return path unshown, although that return path contributes to every RTT. Routing policies and hot-potato choices can make the reverse direction follow different networks, so a separate reverse trace can tell a different story.

Key Takeaways

  • Ping reports echo exchanges and their RTTs.
  • Traceroute increases TTL and identifies routers from expiry reports.
  • UDP traceroute usually ends with port unreachable; echo-based tracing ends with echo reply.
  • Asterisks record missing timely replies, even when forwarding continues.
  • RTT differences are not per-link one-way delays.
  • A trace shows responding forward-path interfaces, not the return path or AS boundaries.
6

Manage networks with SNMP, NETCONF and YANG

Operators need to see what a network is doing and change how its devices behave. SNMP exposes named objects for monitoring and limited changes; counters turn those observations into rates. NETCONF provides structured configuration operations, and YANG defines the data those operations carry. A coordinated change across two routers shows why checking a configuration and safely activating it are different jobs.

6.1 Turn SNMP objects and counters into monitoring data

Network management connects an operator’s goals to device observations and changes. Its framework has five parts: a managing server, managed devices, the devices’ data, agents that expose that data, and a protocol linking agents to the server.

Identify the objects and messages

SNMP, the Simple Network Management Protocol, usually uses UDP. Agents listen on port 161; managers receive notifications on port 162. GetRequest reads objects, GetNextRequest steps through their naming order, and GetBulkRequest reads many values efficiently. SetRequest changes writable objects. Response carries the result.

A trap is an unsolicited notification without an application-level acknowledgment. An InformRequest is acknowledged by the receiver. An agent can therefore report an event without waiting for the next monitoring poll.

A Management Information Base (MIB) defines managed objects in modules using the SMI data-definition language. Each object has an object identifier (OID) in a worldwide naming tree. The OID identifies a defined object; the agent supplies its current value.

For example, sysUpTime, OID 1.3.6.1.2.1.1.3, measures time since the device’s management system restarted. ifInOctets, OID 1.3.6.1.2.1.2.2.1.10, defines per-interface received-byte counters. A table entry also needs its interface instance to identify which interface’s value is being read.

Calculate utilization from two polls

A 100 Mbit/s interface’s counter rises from 1,250,000,000 to 1,475,000,000 bytes over 60 seconds. First find the amount received:

1475000000−1250000000=225000000 bytes.

Convert bytes to bits and divide by elapsed time:

225000000×8=1800000000 bits, 1800000000/60=30000000 bit/s=30 Mbit/s.

Incoming utilization is 30/100=0.30, or 30%. A counter is a cumulative total, not a rate; the difference and elapsed time are both needed. Keeping bytes and bits separate prevents an eightfold error.

Recognize wraparound and restart

ifInOctets is 32-bit and wraps after 232 bytes. At 1 Gbit/s, that takes about 232×8/109≈34 seconds. A 60-second interval can hide multiple wraps, so the two values alone cannot recover the traffic total. The 64-bit ifHCInOctets is suitable for fast interfaces.

When at most one wrap occurred and no reset occurred, add 232 to a negative difference. A device or counter restart needs separate handling; treating every decrease as a wrap can create a false traffic spike.

Choose secure monitoring and structured changes

SNMPv1 and SNMPv2c use plain-text community strings. SNMPv3 supports authentication, encryption, and object-level access control; select the security settings that provide those protections.

SNMP is widely used for monitoring. One SetRequest validates its requested changes before applying them as a group on one device. If assignment fails, the agent tries to undo the changes; an undoFailed response reports that recovery itself failed. It does not create a transaction across multiple devices. Editing individual MIB objects is also cumbersome for large configurations. A CLI can be typed or scripted, but device-by-device text commands become harder to coordinate at scale; NETCONF offers structured configuration operations instead.

Key Takeaways

  • MIB modules define objects; OIDs identify them and agents expose their values.
  • Traps are unacknowledged notifications; informs are acknowledged.
  • A counter difference divided by elapsed time gives a rate.
  • Convert bytes to bits before comparing with a bit/s link speed.
  • Multiple hidden wraps make a short counter unsuitable for a polling interval.
  • SNMPv3 supports authenticated, encrypted management with access control.
  • A SetRequest groups objects on one device, not several devices.

6.2 Prepare and activate configuration with NETCONF and YANG

NETCONF reads and changes structured device configuration. YANG defines the structure, types, and constraints of the data being managed. The protocol moves and applies data; the model describes what that data means and which values are allowed.

Open a secure session and inspect capabilities

NETCONF normally runs over SSH using port 830; secure transport can also use TLS. Client and server exchange hello messages that announce supported capabilities. Requests and replies are XML-encoded remote procedure calls (RPCs).

OperationPurpose
get-configRead configuration
getRead configuration and operational state
edit-configChange a configuration datastore
copy-config, delete-configReplace or remove a whole configuration where permitted
lock, unlockControl concurrent access to a datastore
validateCheck a configuration when supported
commitActivate a prepared candidate configuration when supported
close-session, kill-sessionEnd a session normally or terminate one

Capabilities matter. A manager must discover support for candidate configuration, validation, or confirmed commit before relying on it.

Separate active, prepared, and boot configurations

The running datastore is active. A supported candidate datastore is a working copy for proposed changes, and a supported startup datastore holds the configuration loaded at boot. Editing candidate alone leaves running unchanged. A commit copies the prepared candidate into active use.

A lock prevents conflicting edits while the manager works. Validation checks the candidate’s rules; it does not establish that traffic will continue to behave as intended after activation.

Coordinate two devices without assuming one atomic commit

To change the MTU on a link between R1 and R2, the manager locks both candidates, sends edit-config to each, and validates both. If either validation fails, it discards both prepared changes and releases the locks before activation.

If validation succeeds, it commits on each device and checks the replies. The commits are separate: R1 can change before R2, or one commit can succeed while the other fails. The manager must detect this partial outcome and recover, for example by restoring the earlier configuration.

With confirmed commit, a device automatically reverses the change unless the manager confirms it within a set time. This helps when a new configuration cuts off management access. Each device still has its own operation and timer; confirmed commit does not make the pair a single network-wide transaction.

Use a model to reject an invalid value

A YANG module organizes data in containers, lists, and leaves. A leaf named mtu might have type uint16 and allowed range 68–65535. The value 40 violates the range, even though it fits the unsigned integer type. Model validation checks both type and constraints.

Tools can use YANG models to check NETCONF XML or RESTCONF JSON. Standard IETF interface models, vendor models, and OpenConfig models offer different data definitions. Streaming telemetry can push modeled state at intervals, complementing polling.

SNMP remains useful for monitoring individual objects. NETCONF supplies session-based configuration operations and device-level coordination primitives. Neither protocol alone guarantees that separate devices activate a network-wide change simultaneously.

Key Takeaways

  • NETCONF carries configuration operations; YANG defines the managed data.
  • Capabilities determine which datastores and operations a device supports.
  • Editing candidate does not change running until commit.
  • Locks and validation prepare a change; activation and operational checks follow.
  • Separate device commits can have a partial outcome.
  • Confirmed commit automatically reverses an unconfirmed change.
  • A YANG constraint can reject a value that still fits its basic data type.

Routing and the Control Plane examples

6 Walkthroughs

1

Calculate routes and follow a changed link

20 steps
Build least-cost paths with complete topology or neighbor estimates, then diagnose a loop after a link-cost increase.
  1. 1
    IntroductionBuild the rules that packets follow

    A packet’s full route emerges from local forwarding decisions. Routing software must give each router a next hop that fits what the other routers will do.

    Start with a weighted graph, calculate a least-cost path, and then change a link. The calculations reveal both the final route and a danger during convergence: a neighbor’s advertised cost can hide a route that comes straight back to you.

  2. 2
    ExplanationSeparate routing from forwarding

    The control plane learns routes and determines forwarding state. The data plane applies that state to each arriving packet.

    Traditional routers exchange routing messages and compute locally. SDN applications can compute through a controller and install rules remotely. Either arrangement still ends with a local action: match the destination or flow and select an output link.

  3. 3
    ExampleAdd costs instead of counting links

    Let A–B cost 3, A–C cost 1, and C–B cost 1. The direct route A–B uses fewer links but costs more.

    c(A,C)+c(C,B)=1+1=2.

    A sends traffic for B to C because 2 is below 3. Only when every link costs 1 does minimum total cost mean minimum hop count. The weight measures what the operator chose, not necessarily distance or packet delay.

  4. 4
    ChallengeDoes complete knowledge require one computer?

    Every router holds the same topology graph and independently calculates a tree rooted at itself. Is the algorithm global, and is control running on one server?

    ---reveal---

    The algorithm is global because each calculation uses complete topology information. Control still runs separately in each router. “Global” identifies the information available to the algorithm; it does not identify the number or location of computers executing it.

  5. 5
    ExplanationTrack tentative and final answers

    Dijkstra’s algorithm keeps a settled set, tentative destination costs, and predecessors. Start with the source settled, neighbors at their direct costs, and other nodes at infinity.

    Select the smallest unsettled cost, settle that node, then try paths through it to its unsettled neighbors. A predecessor records the previous node on the chosen path. Nonnegative link costs make each settlement final.

  6. 6
    ExampleStart the six-router calculation

    Use links A–B 3, A–C 1, B–C 1, B–D 4, C–D 6, C–E 2, D–E 1, D–F 3, and E–F 5. Source A starts with B at 3 and C at 1; D, E, and F are unreachable by a known path.

    C is the smallest unsettled candidate. Settling C gives B cost 2 through C, D cost 7 through C, and E cost 3 through C. Record C as predecessor wherever it improved the estimate.

  7. 7
    ExampleSettle B, then E

    B now has the smallest tentative cost, 2. Its link to D improves D’s estimate:

    D(D)=min⁡(7,2+4)=6.

    E is next at cost 3. Through E, D improves again to 4 and F first becomes reachable at cost 8. D has now had estimates 7, 6, and 4. Each was tentative; none became final just because it appeared in an update.

  8. 8
    ExampleFinish and recover the first hop

    Settle D at cost 4. Its link to F improves F from 8 to 7, and F is settled last.

    F’s predecessor chain is F ← D ← E ← C ← A. The path A–C–E–D–F costs 7. To install A’s forwarding entry, use C, the first router after A. D is F’s predecessor but is not directly where A sends the packet. Every best path from A in this graph starts through C.

  9. 9
    ChallengeUse a different source graph

    An undirected graph has Q–R 5, Q–S 2, S–R 1, R–T 3, and S–T 8. What are Q’s least cost and first hop for T?

    ---reveal---

    Q–S–R–T costs 2+1+3=6, so Q’s first hop is S. The direct-through-R path costs 8 and Q–S–T costs 10. R is the predecessor of T on the best path; choosing R as Q’s first hop would skip the cheaper opening link through S.

  10. 10
    Key InsightCosts can change with the traffic they attract

    If link cost rises with load, every router can choose the same lightly loaded path at once. That shift makes the path expensive, so the next common calculation moves traffic away again.

    This feedback can oscillate even when the calculation is correct. Using load-insensitive costs removes that particular trigger. Randomized timing can also reduce synchronized changes. A static mathematical graph and a graph reacting to its own traffic have different behavior.

  11. 11
    ExplanationReplace the graph with neighbor estimates

    A distance-vector router knows its attached-link costs and neighbors’ advertised destination estimates. For every other destination, it compares the total through each neighbor.

    Dx(y)=min⁡v{c(x,v)+Dv(y)}.

    Its own distance stays 0. A new neighbor vector or changed local link triggers another calculation. Changed estimates are sent onward, letting information spread without any router storing the whole graph.

  12. 12
    ExampleCalculate from A using B’s vector

    Let A–B cost 4, B–C cost 1, and A–C cost 7. B initially advertises cost 1 to C. A compares its alternatives:

    DA(C)=min⁡(4+1,7+0)=5.

    A selects B as next hop for C. C similarly learns cost 5 to A through B. The following exchange changes nothing. The routers have converged without A needing a description of B’s link to C.

  13. 13
    ChallengeInclude the first-link cost

    J reaches neighbors K and L at costs 2 and 7. They advertise destination Z at costs 9 and 1. Which neighbor does J choose, and what cost does it record?

    ---reveal---

    J records cost 8 through L. The alternatives are 2+9=11 through K and 7+1=8 through L. Choosing cost 1 would copy L’s estimate without paying for J’s link to L. The minimum determines both the estimate and the next hop.

  14. 14
    ConnectionRIP adds messages and timers

    RIP puts a protocol around distance-vector calculation. It counts hops, uses 16 as unreachable, sends periodic updates every 30 seconds over UDP port 520, and expires an unrefreshed route after 180 seconds.

    The basic algorithm advertises when its estimate changes; RIP also sends periodic protocol messages when routes are stable. Its small infinity limits count-to-infinity, but also limits usable paths to 15 hops.

  15. 15
    ExampleRaise the cost and expose a hidden dependency

    Start with A–B 2, B–C 1, and A–C 20. C reaches A through B at cost 3. Now A–B rises to 40.

    B still sees C’s old cost 3 and computes 4 through C. Yet C’s selected route returns to B. Both estimates sound usable while the forwarding decisions form a loop. TTL limits how long one packet can circulate; it does not correct the route estimates.

  16. 16
    ExampleWatch the estimates count upward

    C hears B’s new cost 4 and advertises 5 through B. B then advertises 6, C advertises 7, and the cycle continues. This is count-to-infinity.

    The direct A–C link eventually breaks the cycle. When B advertises 20, C chooses its own cost 20 instead of 21 through B. B then reaches A through C at cost 21. The slow part came from treating dependent stale estimates as fresh alternatives.

  17. 17
    ExplanationPoison the route toward its next hop

    With poisoned reverse, C initially advertises infinity for A specifically toward B, because B is C’s next hop for A. B cannot use C’s route as an independent backup.

    After A–B rises to 40, B advertises its direct 40. C then chooses its direct 20 and advertises that independent route. B settles at 21 through C. The defense prevents this two-router loop; longer dependency cycles can still occur.

  18. 18
    ChallengeChange the cost downward instead

    Links A–B 6, B–C 2, and A–C 30 have converged. A–B falls to 3. What new costs to A do B and then C advertise?

    ---reveal---

    B advertises 3 using its direct link. C compares its direct 30 with 2+3 and advertises 5 through B. Hearing 5 does not improve B’s direct 3. The lower cost spreads cleanly here because neither router needs the other’s obsolete estimate to justify the improvement.

  19. 19
    ChallengeSeparate a loop defense from packet disposal

    After a cost increase, two routers forward destination traffic to one another. A learner says, “TTL already solves the problem, so their routing estimates need no change.” What is missing?

    ---reveal---

    TTL eventually discards each looping datagram, but later datagrams can enter the same loop. Routing must converge on consistent next hops. Poisoned reverse can block the two-router dependency during the exchange; it changes the routing information instead of merely limiting one packet’s lifetime.

  20. 20
    RecapRead a route calculation in three passes

    First identify the information: a complete graph or neighbors’ destination estimates. Then follow the computation until the costs settle. Finally extract the first hop that the forwarding table needs.

    For a changed link, also inspect intermediate dependencies. A final least-cost answer does not describe every forwarding decision made while routers are still converging.

2

Build and scale an OSPF routing domain

14 steps
Connect AS hierarchy, OSPF neighbor relationships, link-state flooding, and inter-area routing.

Save this lesson to follow every Walkthrough step by step.

  1. 1
    IntroductionFind internal paths without a flat Internet graph
  2. 2
    ExplanationGive each operator a routing boundary
  3. 3
    ExampleResolve the exit through an internal neighbor
  4. 4
    ChallengeMust neighboring ASes share an IGP?
  5. 5
    ExplanationDiscover neighbors before synchronizing state
  6. 6
    ExplanationKeep link descriptions fresh
  7. 7
    ExampleLet weights express the operator’s choice
  8. 8
    ExampleCount the DR and BDR adjacencies
  9. 9
    ChallengeCheck a LAN with a different size
  10. 10
    ExplanationKeep separate graphs for separate areas
  11. 11
    ExampleFollow traffic from one area to another
  12. 12
    ChallengeDoes an area boundary hide a changed cost?
  13. 13
    ChallengeConnect an external route to an internal change
  14. 14
    RecapIdentify the boundary before choosing the mechanism
3

Follow a BGP route from advertisement to forwarding

19 steps
Propagate a prefix, apply route preferences and export rules, and test what origin validation can establish.

Save this lesson to follow every Walkthrough step by step.

  1. 1
    IntroductionFollow the promise as well as the packet
  2. 2
    ExplanationJoin external and internal BGP sessions
  3. 3
    ExamplePrepend the advertising AS number
  4. 4
    ChallengeReject a route that returns to your AS
  5. 5
    TipRead updates as changes, not periodic table dumps
  6. 6
    ExplanationStop at the first decisive preference
  7. 7
    ExampleLet equal earlier attributes reach hot-potato routing
  8. 8
    ExampleApply a preference before measuring the exit
  9. 9
    ChallengeDiscard a tempting low MED
  10. 10
    ConnectionUse the same route selection for anycast
  11. 11
    ExplanationDistinguish paid transit from peering
  12. 12
    ExampleKeep a customer from becoming transit between providers
  13. 13
    ChallengeReclassify a route at the next AS
  14. 14
    ExplanationSeparate a hijack from a leak
  15. 15
    ExampleWatch a local block spread internationally
  16. 16
    ExplanationCheck prefix, origin, and length against a ROA
  17. 17
    ChallengeDoes a valid origin rule out a route leak?
  18. 18
    ChallengeCombine validation, filtering, and forwarding
  19. 19
    RecapAsk three different questions about a route
4

Repair a path through an SDN controller

11 steps
Trace applications, controller state, and OpenFlow messages from a link event to installed forwarding rules.

Save this lesson to follow every Walkthrough step by step.

  1. 1
    IntroductionTurn an application’s path into device behavior
  2. 2
    ExplanationLocate the decision and the forwarding action
  3. 3
    ExplanationFollow northbound and southbound interfaces
  4. 4
    ChallengeCan a cluster present centralized control?
  5. 5
    ExplanationMatch a packet to its highest-priority rule
  6. 6
    ExampleReceive the failed-link event
  7. 7
    ExampleCompute and install the detour
  8. 8
    ChallengeRelease one packet or program later traffic?
  9. 9
    Key InsightReact to the first packet without handling all packets
  10. 10
    ChallengeUse an event and the remaining graph
  11. 11
    RecapFollow state all the way to the switches
5

Explain an ICMP report and read a path test

13 steps
Follow packet errors, path MTU discovery, ping loss, and traceroute replies without confusing RTT with link delay.

Save this lesson to follow every Walkthrough step by step.

  1. 1
    IntroductionIdentify what the network actually reported
  2. 2
    ExplanationRead the type and the code
  3. 3
    ExampleMatch different failures to different sources
  4. 4
    ExampleFollow an oversized IPv4 packet
  5. 5
    ConnectionPreserve the IPv6 size feedback too
  6. 6
    ChallengeDiagnose a size-dependent failure
  7. 7
    ExampleMeasure ping loss against requests sent
  8. 8
    ExplanationIncrease TTL to reveal later routers
  9. 9
    ExampleRead a persistent RTT rise
  10. 10
    ChallengeRead an isolated slow router response
  11. 11
    TipTreat asterisks as timeouts, not a topology diagram
  12. 12
    ChallengeKeep arrival separate from an application listener
  13. 13
    RecapState the observation before the diagnosis
6

Measure utilization and prepare a two-device change

16 steps
Derive rates from SNMP counters, handle wraps, and use NETCONF datastores and YANG constraints for controlled configuration.

Save this lesson to follow every Walkthrough step by step.

  1. 1
    IntroductionObserve first, then change with feedback
  2. 2
    ExplanationConnect the server to managed objects
  3. 3
    ExplanationChoose a read or a notification
  4. 4
    ExampleSubtract the counter samples
  5. 5
    ExampleConvert the interval total to utilization
  6. 6
    ExplanationCheck whether the counter can hide wraps
  7. 7
    ChallengeCalculate a new measurement interval
  8. 8
    ConnectionProtect monitoring and distinguish configuration tools
  9. 9
    ExplanationDiscover capabilities and separate datastores
  10. 10
    ExamplePrepare the link’s two endpoints
  11. 11
    ExampleActivate separately and inspect the result
  12. 12
    Key InsightUse confirmed commit to recover lost access
  13. 13
    ExplanationLet YANG constrain the values
  14. 14
    ChallengeDiagnose a failed preparation
  15. 15
    ChallengeCombine activation with operational measurements
  16. 16
    RecapCheck the meaning behind each reported value

Routing and the Control Plane practice questions

60 Practice Questions in 6 sets

Set 1: Compute routes and follow changes10 Practice Questions

Question 1 of 10

A router receives a datagram and uses an installed entry to choose output port 4. Which network-layer function is it performing?
  1. Control-plane routing
  2. Topology discovery
  3. Data-plane forwarding
  4. Route policy selection
Show answerHide answer
Answer: C
The router is applying existing forwarding state to one arriving datagram, which is a data-plane action. Route computation belongs to the control plane and determines the entries that forwarding later uses. Choosing a port from an installed entry does not require recalculating an end-to-end path.

Question 2 of 10

Every router stores the complete topology and independently computes paths. How should this algorithm’s information and execution be described?
  1. Local information with per-router execution
  2. Global information with per-router execution
  3. Global information with single-server execution
  4. Local information with single-server execution
Show answerHide answer
Answer: B
The computation uses global information because each router has the complete graph. Its execution is distributed among routers because each runs the computation independently. Calling the algorithm global does not place it on a single server; it describes what information the computation uses.

Question 3 of 10

An undirected graph has links P–Q 8, P–R 2, R–Q 3, Q–T 2, and R–T 9. What next hop and total cost does P use for T?
  1. R, cost 7
  2. Q, cost 10
  3. R, cost 11
  4. Q, cost 5
Show answerHide answer
Answer: A
The least-cost path is P–R–Q–T, costing 2+3+2=7, so its first hop is R. The direct route through Q costs 10, and P–R–T costs 11. Q is T’s predecessor on the best path, but it is not P’s immediate next hop.

Question 4 of 10

In Dijkstra’s algorithm, router M has the lowest tentative cost among all unsettled routers. What happens to M’s cost when M joins the settled set?
  1. Its cost becomes the link cost.
  2. Its cost remains tentative.
  3. It takes its predecessor’s cost.
  4. Its least cost becomes final.
Show answerHide answer
Answer: D
With nonnegative link costs, settling the smallest tentative estimate makes that router’s least cost final. Other unsettled estimates can still improve as the algorithm continues. Waiting for every node to settle confuses completion of the whole tree with finalization of one node.

Question 5 of 10

Undirected links are U–V 6, U–W 2, W–V 1, V–X 2, W–X 7, and X–Y 1. Link V–X fails. After convergence, how do U’s next hop and cost to Y change?
  1. V replaces W as next hop; cost rises from 6 to 9.
  2. W stays the next hop; cost rises from 6 to 10.
  3. W stays the next hop; cost rises from 5 to 9.
  4. V replaces W as next hop; cost rises from 6 to 10.
Show answerHide answer
Answer: B
Before failure, U–W–V–X–Y costs 2+1+2+1=6. Removing V–X leaves U–W–X–Y at cost 10, still starting with W. Keeping the original first hop is compatible with a changed downstream path; using V adds cost without restoring the failed link.

Question 6 of 10

Router J has neighbors K and L. Its link costs are 3 to K and 6 to L; their advertised costs to Z are 8 and 2. What next hop and estimate does J choose for Z?
  1. K, cost 8
  2. K, cost 11
  3. L, cost 2
  4. L, cost 8
Show answerHide answer
Answer: D
J compares the whole route through each neighbor: 3+8=11 through K and 6+2=8 through L. It therefore chooses L with cost 8. Taking L’s advertised 2 alone forgets the cost of reaching L, which is part of J’s path.

Question 7 of 10

A distance-vector router receives a changed neighbor vector, but all of its own destination estimates remain unchanged. Under the basic changed-vector algorithm, what does it do next?
  1. Keep its vector without sending a changed-vector update.
  2. Flood the neighbor’s vector to every router.
  3. Send a changed-vector update with the same estimates.
  4. Replace its vector with the neighbor’s vector.
Show answerHide answer
Answer: A
A changed neighbor message triggers recomputation, but an unchanged local vector supplies no new estimate to advertise under the basic algorithm. Flooding would be link-state-style dissemination, and copying the neighbor’s vector would omit the first-link costs. A protocol can still send periodic maintenance updates.

Question 8 of 10

Links are A–B 5, B–C 2, C–D 3, and A–D 18. Initially routers know only direct routes. B receives C’s initial vector, updates, and advertises to A. A has also received D’s initial vector. What estimate and next hop does A then choose for D?
  1. Cost 8 through B
  2. Cost 18 through D
  3. Cost 10 through B
  4. Cost 5 through B
Show answerHide answer
Answer: C
C initially advertises cost 3 to D, so B learns cost 2+3=5 through C. A then adds its link to B and obtains 5+5=10, beating its direct cost 18. Treating B’s advertised 5 as A’s total loses the first link in the second update.

Question 9 of 10

Router C reaches destination A through B. With poisoned reverse, what distance to A does C advertise specifically to B?
  1. C’s real distance to A
  2. The cost of link C–B
  3. Infinity
  4. Zero
Show answerHide answer
Answer: C
C advertises infinity toward B because its route to A depends on B. This keeps B from treating C as an independent route back to A. Advertising the real distance would hide that dependency and could let the two routers choose one another after a cost increase.

Question 10 of 10

Links A–B 3, B–C 2, and A–C 25 have converged without poisoned reverse. A–B rises to 50. B updates using C’s old vector, then C updates using B’s new vector. What are their new advertised costs to A, in that order?
  1. B advertises 7; C advertises 9.
  2. B advertises 50; C advertises 25.
  3. B advertises 5; C advertises 7.
  4. B advertises 27; C advertises 25.
Show answerHide answer
Answer: A
C’s old cost to A is 2+3=5 through B. B mistakes it for an alternative and computes 2+5=7; C then computes 2+7=9, below its direct 25. Jumping immediately to 27 assumes C has already abandoned its stale route, which this update order has not allowed.
Set 2: Connect internal routes to external reachability10 Practice Questions

Save this lesson to see every answer and practice every set.

Question 1 of 10

A research organization controls several routers under one external routing policy and has its own public ASN. What routing entity does this describe?
  1. An OSPF backbone area
  2. An Internet exchange point
  3. A BGP transport session
  4. An autonomous system
Show answerHide answer

Save this lesson to see this answer.

Question 2 of 10

Two neighboring OSPF routers stop receiving each other’s Hellos. Which configured timer determines when the neighbor is declared down?
  1. The dead interval
  2. The LSA refresh interval
  3. The LSA maximum age
  4. The Hello send interval
Show answerHide answer

Save this lesson to see this answer.

Question 3 of 10

Eight OSPF routers share a broadcast LAN and elect a DR and BDR. How many full adjacencies are needed in this arrangement?
  1. 28
  2. 12
  3. 13
  4. 16
Show answerHide answer

Save this lesson to see this answer.

Question 4 of 10

An OSPF router has these paths to subnet Z: via M, links 2 and 7; via N, links 4 and 3; via P, links 1 and 6. All links are in the same area and ECMP is enabled. What first hops can it retain?
  1. M only, at link cost 2
  2. N and P, both at cost 7
  3. P only, first link cost 1
  4. M and N, with two links
Show answerHide answer

Save this lesson to see this answer.

Question 5 of 10

A router injects BGP-learned external routes into OSPF but has interfaces in only one OSPF area. Which OSPF role does this establish?
  1. Area border router
  2. Designated router
  3. AS boundary router
  4. Backbone router
Show answerHide answer

Save this lesson to see this answer.

Question 6 of 10

A link fails in area 12. The ABR’s advertised cost to a subnet changes, but its reachability remains. What routing work follows in an ordinary router in another area?
  1. Update the affected inter-area route from a changed summary.
  2. Rebuild its full tree using area 12’s changed router-LSA.
  3. Ignore the event because area boundaries stop all consequences.
  4. Withdraw every route whose destination belongs to area 12.
Show answerHide answer

Save this lesson to see this answer.

Question 7 of 10

Two BGP speakers have different AS numbers and exchange advertisements over a TCP session. What kind of BGP session is this?
  1. iBGP
  2. IGP
  3. ECMP
  4. eBGP
Show answerHide answer

Save this lesson to see this answer.

Question 8 of 10

AS 64508 receives a route with AS-PATH “64509 64511” and exports it normally to AS 64507. What AS-PATH does AS 64507 receive?
  1. 64509 64511 64508
  2. 64508 64509 64511
  3. 64507 64509 64511
  4. 64509 64508 64511
Show answerHide answer

Save this lesson to see this answer.

Question 9 of 10

R accepts two usable routes to one prefix. Route M has LOCAL_PREF 160 and AS-PATH length 4; route N has LOCAL_PREF 110 and AS-PATH length 2. What route wins under the ordered BGP comparison?
  1. M wins on LOCAL_PREF.
  2. N wins on AS-PATH length.
  3. M wins only on lower MED.
  4. N wins as an eBGP route.
Show answerHide answer

Save this lesson to see this answer.

Question 10 of 10

R learns two usable routes over iBGP with equal LOCAL_PREF, AS-PATH length, and ORIGIN. They come from different neighboring ASes. Their MED values are 80 through G and 10 through H; R’s IGP costs are 4 to G and 9 to H. What route wins?
  1. H wins on MED.
  2. G wins on internal cost.
  3. H wins on internal cost.
  4. G wins on MED.
Show answerHide answer

Save this lesson to see this answer.

Set 3: Choose BGP routes and contain routing mistakes10 Practice Questions

Save this lesson to see every answer and practice every set.

Question 1 of 10

AS 64506 receives a route with AS-PATH “64504 64506 64511.” Why does normal BGP loop checking reject it?
  1. The path contains more than two ASes.
  2. The path already contains AS 64506.
  3. The path ends with a different origin AS.
  4. The path begins with a neighboring AS.
Show answerHide answer

Save this lesson to see this answer.

Question 2 of 10

A route with NEXT-HOP G wins BGP selection at router R. R’s IGP path to G starts through interface 3 toward H. What forwarding action does R install for the prefix?
  1. Send directly to G with no lookup.
  2. Send toward the last AS in AS-PATH.
  3. Send through interface 3 toward H.
  4. Send to the announcing iBGP speaker.
Show answerHide answer

Save this lesson to see this answer.

Question 3 of 10

Several service locations advertise the same prefix, and normal routing determines which location receives a client’s packets. What addressing technique is being used?
  1. IP anycast
  2. IP multicast
  3. IP broadcast
  4. IP unicast to one fixed server
Show answerHide answer

Save this lesson to see this answer.

Question 4 of 10

Three usable iBGP routes to one prefix have equal ORIGIN. J has LOCAL_PREF 120, path length 1, IGP cost 2; K has 180, length 3, cost 8; L has 180, length 2, cost 13. MED is inapplicable. Which route wins, and at which comparison?
  1. J, after the shortest AS-PATH is compared first.
  2. K, after LOCAL_PREF ties and IGP cost is compared.
  3. L, after all routes tie and NEXT-HOP cost is compared.
  4. L, after LOCAL_PREF ties and AS-PATH is compared.
Show answerHide answer

Save this lesson to see this answer.

Question 5 of 10

A routing change sends an established anycast TCP connection to a different service instance that does not share connection state. Why can the connection fail even though the prefix remains reachable?
  1. The new instance lacks the existing TCP state.
  2. BGP requires a new prefix for each instance.
  3. The change invalidates every route to the prefix.
  4. TCP accepts packets only from the closest site.
Show answerHide answer

Save this lesson to see this answer.

Question 6 of 10

AS X learns a route from peer P. Under the usual commercial export rules, to which neighbor class can X advertise that learned route?
  1. Its peers only
  2. Its providers only
  3. Its customers only
  4. Its peers and providers
Show answerHide answer

Save this lesson to see this answer.

Question 7 of 10

X is a customer of providers M and N and has customer Y. X learns a route to Z from M. Under usual export policy, how does X handle that route toward N and Y?
  1. Advertise it to both N and Y.
  2. Advertise it to N; withhold it from Y.
  3. Withhold it from both N and Y.
  4. Withhold it from N; advertise it to Y.
Show answerHide answer

Save this lesson to see this answer.

Question 8 of 10

An accepted route to 198.51.100.0/24 has AS-PATH length 5. An accepted route to 198.51.100.128/25 has length 3. Where does forwarding send a packet for 198.51.100.200?
  1. Along the /24 route because it covers more addresses.
  2. Along the /25 route because its prefix is longer.
  3. Along the /25 route because its AS-PATH is shorter.
  4. Along the /24 route because it was announced as an aggregate.
Show answerHide answer

Save this lesson to see this answer.

Question 9 of 10

The only covering ROA authorizes AS 64507 for 192.0.2.0/24 with maximum length /25. Announcements are P: 192.0.2.0/25, origin 64507; Q: 192.0.2.128/26, origin 64507; R: 192.0.2.128/25, origin 64508. What are their origin-validation states?
  1. P valid; Q valid; R invalid.
  2. P not found; Q invalid; R invalid.
  3. P valid; Q invalid; R invalid.
  4. P valid; Q invalid; R not found.
Show answerHide answer

Save this lesson to see this answer.

Question 10 of 10

A customer exports a provider-learned route to another provider. The origin ASN and prefix length still match the only covering ROA. What failure and validation result should an operator expect?
  1. A route leak with a valid origin result.
  2. A prefix hijack with an invalid origin result.
  3. A route leak with an invalid origin result.
  4. A prefix hijack with a not-found origin result.
Show answerHide answer

Save this lesson to see this answer.

Set 4: Trace controller events and packet reports10 Practice Questions

Save this lesson to see every answer and practice every set.

Question 1 of 10

An OpenFlow switch detects that a physical port went down. Which message reports this event to the controller?
  1. Packet-out
  2. Flow-mod
  3. Port-status
  4. Port-mod
Show answerHide answer

Save this lesson to see this answer.

Question 2 of 10

A routing application subscribes to link-change events exposed by an SDN controller. Which interface connects these two components?
  1. The northbound interface
  2. The southbound interface
  3. The inter-AS BGP session
  4. The switch’s packet input port
Show answerHide answer

Save this lesson to see this answer.

Question 3 of 10

Three servers share state and expose one coherent controller service to SDN applications. How is this control arrangement described?
  1. Logically distributed and physically centralized
  2. Logically centralized and physically centralized
  3. Logically distributed and physically distributed
  4. Logically centralized and physically distributed
Show answerHide answer

Save this lesson to see this answer.

Question 4 of 10

An OpenFlow 1.3 packet matches no ordinary entry, and the table has no table-miss entry. What happens by default?
  1. The switch sends a packet-in.
  2. The switch drops the packet.
  3. The switch sends a packet-out.
  4. The switch floods the packet.
Show answerHide answer

Save this lesson to see this answer.

Question 5 of 10

Switch links are S7–S8 cost 1, S8–S10 cost 1, S7–S9 cost 4, S8–S9 cost 1, and S9–S10 cost 3. S8–S10 fails. What replacement path from S7 to S10 should be installed, and which OpenFlow operation installs its persistent rules?
  1. S7–S9–S10 at cost 7, installed with flow-mod.
  2. S7–S8–S9–S10 at cost 5, installed with flow-mod.
  3. S7–S8–S9–S10 at cost 5, installed with packet-out.
  4. S7–S9–S10 at cost 5, installed with flow-mod.
Show answerHide answer

Save this lesson to see this answer.

Question 6 of 10

A packet matches two entries in one OpenFlow table: priority 30 sends it to port 2, and priority 70 sends it to the controller. A table-miss entry drops packets. What happens to this packet?
  1. It is forwarded out port 2.
  2. It is dropped as a table miss.
  3. It is sent to the controller.
  4. It goes to both destinations.
Show answerHide answer

Save this lesson to see this answer.

Question 7 of 10

A destination host receives a UDP probe for a port with no listening application and returns an ICMPv4 error. Which type and code identify that error?
  1. Type 3, code 3
  2. Type 11, code 0
  3. Type 3, code 4
  4. Type 0, code 0
Show answerHide answer

Save this lesson to see this answer.

Question 8 of 10

An IPv4 datagram carrying a UDP probe has 1,380 bytes of IP payload and a 20-byte IP header with Don’t Fragment set. It meets a link with MTU 1,280 bytes. What ICMPv4 report applies, and what largest IP payload would fit that link with the same header size?
  1. Type 3 code 4; payload 1,280 bytes.
  2. Type 3 code 3; payload 1,260 bytes.
  3. Type 11 code 0; payload 1,260 bytes.
  4. Type 3 code 4; payload 1,260 bytes.
Show answerHide answer

Save this lesson to see this answer.

Question 9 of 10

A ping run sends 12 requests and receives 9 replies. What percentage of requests have no reply?
  1. 33%
  2. 75%
  3. 25%
  4. 9%
Show answerHide answer

Save this lesson to see this answer.

Question 10 of 10

A trace shows RTTs of 4 ms at hop 1, no replies at hop 2, 7 ms at hop 3, and 8 ms at the destination. What conclusion about hop 2 is supported?
  1. Its probes timed out while later probes reached beyond it.
  2. Its forwarding failure was repaired before every later probe.
  3. It added exactly 3 ms to the path despite withholding replies.
  4. It forwarded all probes over the same return path as hop 3.
Show answerHide answer

Save this lesson to see this answer.

Set 5: Measure traffic and coordinate configuration10 Practice Questions

Save this lesson to see every answer and practice every set.

Question 1 of 10

An SNMP agent reports an event and expects the receiver to acknowledge the notification. Which notification does it use?
  1. Trap
  2. GetRequest
  3. SetRequest
  4. InformRequest
Show answerHide answer

Save this lesson to see this answer.

Question 2 of 10

An incoming byte counter rises by 90,000,000 over 30 seconds on a 200 Mbit/s link. There was no reset or wrap. What incoming utilization does this interval show?
  1. 1.5%
  2. 12%
  3. 24%
  4. 60%
Show answerHide answer

Save this lesson to see this answer.

Question 3 of 10

A 32-bit incoming byte counter changes from 4,200,000,000 to 105,032,704 over 10 seconds on a 400 Mbit/s link. No reset occurred and at most one wrap occurred. What incoming utilization does this imply?
  1. 40%
  2. 20%
  3. 80%
  4. 4%
Show answerHide answer

Save this lesson to see this answer.

Question 4 of 10

A manager polls a 32-bit byte counter every 90 seconds on a 2 Gbit/s interface. No counter resets occur. Why can two samples still be insufficient to recover the traffic total?
  1. The counter counts bits instead of received bytes.
  2. One wrap always means the interface restarted.
  3. Several counter wraps can occur between polls.
  4. A lower sample always identifies exactly one wrap.
Show answerHide answer

Save this lesson to see this answer.

Question 5 of 10

A manager edits a supported NETCONF candidate datastore but has not committed. Which configuration is still active?
  1. The edited candidate datastore
  2. The startup datastore
  3. The running datastore
  4. The last retrieved XML reply
Show answerHide answer

Save this lesson to see this answer.

Question 6 of 10

Two routers support candidate, validation, and confirmed commit. Both candidates validate. The first commit succeeds; the second device becomes unreachable before its commit result is known. What should the manager conclude?
  1. Both configurations are active because both candidates validated.
  2. Activation may be partial, requiring verification and recovery.
  3. Neither configuration changed because one reply is missing.
  4. Both configurations were rolled back by the shared NETCONF transaction.
Show answerHide answer

Save this lesson to see this answer.

Question 7 of 10

A YANG leaf uses uint16 and has range 1280–9000. An edit proposes 1,000. Why is the value rejected?
  1. It violates the leaf’s allowed range.
  2. It exceeds the uint16 maximum.
  3. It uses an unsupported transport encoding.
  4. It is already the running value.
Show answerHide answer

Save this lesson to see this answer.

Question 8 of 10

Small IPv6 exchanges work, but larger packets disappear after all ICMPv6 is blocked. Which blocked feedback directly explains a path MTU problem?
  1. Echo request
  2. Redirect
  3. Port unreachable
  4. Packet Too Big
Show answerHide answer

Save this lesson to see this answer.

Question 9 of 10

Classic UDP traceroute reaches its destination at an unused UDP port. What reply normally tells it to stop?
  1. ICMP port unreachable
  2. ICMP time exceeded
  3. ICMP fragmentation needed
  4. ICMP echo reply
Show answerHide answer

Save this lesson to see this answer.

Question 10 of 10

A traceroute reports hop 4 at 84 ms, hop 5 at 11 ms, and the destination at 13 ms. Probes received replies at every hop. How should the isolated hop-4 value be interpreted?
  1. It establishes at least 73 ms of delay on the hop-4 forwarding link.
  2. It can reflect slow ICMP reply generation or a different return path.
  3. It establishes that hop 5 is reached without passing any earlier router.
  4. It gives the forward and reverse routes used by the destination flow.
Show answerHide answer

Save this lesson to see this answer.

Set 6: Resolve failures across routing and management10 Practice Questions

Save this lesson to see every answer and practice every set.

Question 1 of 10

Undirected links are K–L 4, K–M 1, M–L 1, L–N 2, M–N 6, N–P 2, and M–P 10. Link M–L fails. What are K’s new next hop and least cost to P?
  1. M, cost 9
  2. L, cost 7
  3. L, cost 8
  4. M, cost 6
Show answerHide answer

Save this lesson to see this answer.

Question 2 of 10

Links A–B 4, B–C 3, and A–C 30 have converged with poisoned reverse. A–B rises to 60. B updates, then C, then B. What final routes to A result?
  1. B uses C at 33; C uses A at 30.
  2. B uses C at 10; C uses B at 13.
  3. B uses A at 60; C uses B at 63.
  4. B uses A at 60; C uses A at 30.
Show answerHide answer

Save this lesson to see this answer.

Question 3 of 10

A router has interfaces in area 0 and area 6 and also injects external routes into OSPF. Which roles can it hold together?
  1. ABR and internal router only
  2. ASBR and internal router only
  3. DR and internal router only
  4. ABR, ASBR, and backbone router
Show answerHide answer

Save this lesson to see this answer.

Question 4 of 10

Three usable routes to one prefix have equal LOCAL_PREF, ORIGIN, and path length. M is eBGP with IGP cost 12; N is iBGP with IGP cost 2; P is iBGP with IGP cost 5. MED is inapplicable. Which route wins and why?
  1. N wins because it has the lowest IGP cost.
  2. M wins before the IGP-cost comparison.
  3. P wins because iBGP precedes eBGP.
  4. M wins because its IGP cost is highest.
Show answerHide answer

Save this lesson to see this answer.

Question 5 of 10

X learns a prefix from customer Y and advertises it to peer P. P has customer C and peer Q. Under usual commercial export rules, what can P do with this route?
  1. Advertise it to C and withhold it from Q.
  2. Advertise it to C and Q as a customer route.
  3. Withhold it from C and advertise it to Q.
  4. Withhold it from both C and Q as an external route.
Show answerHide answer

Save this lesson to see this answer.

Question 6 of 10

The only covering ROA authorizes AS 64511 for 203.0.113.0/24 with maximum /24. A route for that /24 has AS-PATH “64508 64511.” A second route for 203.0.113.128/25 has the same AS-PATH. Both are accepted and installed without rejecting invalid origins. For 203.0.113.190, what forwarding choice and validation states follow?
  1. The /24 wins; /24 is valid and /25 is invalid.
  2. The /25 wins; /24 is valid and /25 is invalid.
  3. The /25 wins; both origin-validation states are valid.
  4. The /24 wins; /24 is valid and /25 is not found.
Show answerHide answer

Save this lesson to see this answer.

Question 7 of 10

After a link failure, an application computes a detour and the controller sends packet-out for one buffered packet. No flow-mod is sent and the old matching rule still names the failed output port. Why can later packets still fail?
  1. Packet-out replaces the old entry only for packets in the buffer.
  2. The computed path changes later forwarding once packet-out is acknowledged.
  3. The switch must expire the old entry before flow-mod can replace it.
  4. Packet-out releases one packet without replacing the old matching rule.
Show answerHide answer

Save this lesson to see this answer.

Question 8 of 10

A traceroute line contains “* * *.” What observation does that line record?
  1. The destination has no IP route back to any source.
  2. All packets were dropped at that router’s output.
  3. No replies arrived before the probe timeouts.
  4. The path contains three failed routers at this TTL.
Show answerHide answer

Save this lesson to see this answer.

Question 9 of 10

A 64-bit incoming byte counter rises by 300,000,000 over 20 seconds on a 1 Gbit/s interface. There was no reset or wrap. A second interval has the same byte increase over 40 seconds. What incoming utilizations do the intervals show?
  1. 24% first and 12% second
  2. 12% first and 6% second
  3. 6% first and 12% second
  4. 30% first and 15% second
Show answerHide answer

Save this lesson to see this answer.

Question 10 of 10

Two devices activate supported confirmed commits with 120-second timeouts. Device A receives confirmation; device B loses management access and receives no confirmation. What happens when B’s timer expires?
  1. Both revert because they belong to one shared change.
  2. Both keep their changes because validation passed.
  3. B reverts; A keeps its confirmed configuration.
  4. A reverts; B keeps its unconfirmed configuration.
Show answerHide answer

Save this lesson to see this answer.

Stuck on your own question? Homework Help

Key Terms

104 Key Terms, each with its definition

A

Area border router
An area border router (ABR) joins OSPF areas, including the backbone, and advertises inter-area routes while keeping area databases separate.
An ABR can update a remote subnet’s advertised cost without flooding its detailed local links elsewhere.
AS boundary router
An AS boundary router (ASBR) introduces routes from outside the OSPF domain, such as external routes learned through BGP.
A router can be both an ABR and an ASBR if it connects areas and redistributes external routing information.
AS number
An AS number (ASN) identifies an autonomous system in inter-domain routing; public ASNs use a globally coordinated number space.
An external BGP advertisement records the exporting network’s ASN in the AS-PATH attribute.
AS-external-LSA
An AS-external-LSA is a type 5 OSPF advertisement originated by an ASBR to describe a destination external to the OSPF domain.
External LSAs normally spread through the AS, except where special area rules restrict their distribution.
AS-PATH
The AS-PATH attribute records the AS sequence through which a BGP advertisement has traveled, with the origin at the end.
An external exporter prepends its own number before sending the route to another AS.
Asymmetric routing
Asymmetric routing occurs when traffic between two endpoints follows different network paths in the forward and reverse directions.
A traceroute’s replies may return through networks that never appear among its forward-hop addresses.
Autonomous system
An autonomous system (AS) is a group of routers under one administration that presents a coherent routing policy to other networks.
A university can run its own AS while buying transit from two independently managed providers.

B

Backbone area
The backbone area is OSPF area 0, which connects other areas and carries ordinary traffic between non-backbone areas.
A packet from area 4 to area 8 passes through the backbone between their area border routers.
Backup designated router
A backup designated router (BDR) maintains adjacencies on an OSPF broadcast network and is ready to take over the designated role.
Counting LAN adjacencies includes one between the DR and BDR as well as those from ordinary routers.
Bellman–Ford equation
The Bellman–Ford equation chooses the least destination cost by minimizing each first-link cost plus that neighbor’s destination distance.
A router compares 3+7 through one neighbor with 6+2 through another and chooses the latter.
BGP
BGP is the path-vector protocol that exchanges prefix reachability and attributes among autonomous systems and distributes them internally.
An operator can reject a BGP route even when the advertised path is physically available.

C

Candidate datastore
A candidate datastore is a supported NETCONF working configuration where changes can be prepared and checked before activation.
Two devices can validate their candidates while both still operate with their earlier running configurations.
Confirmed commit
A confirmed commit activates a NETCONF change temporarily and automatically reverses it unless confirmation arrives before the timeout.
A change that breaks management access can undo itself when the manager cannot send confirmation.
Control plane
The control plane is the network logic that learns reachability, selects routes, and determines the forwarding state installed in devices.
After a link fails, the control plane changes routes so later packets can follow a surviving path.
Convergence
Convergence is the settling of routing state after relevant changes have propagated and calculations no longer alter the selected routes.
A network can briefly contain inconsistent forwarding entries while its routing protocol converges.
Count-to-infinity
Count-to-infinity is a distance-vector failure in which stale dependent route estimates repeatedly increase after a route becomes worse.
Two neighbors keep adding their link cost to one another’s obsolete claim of a path to the destination.
Counter wraparound
Counter wraparound occurs when a fixed-width counter reaches its largest value and continues from zero after the next increment.
A negative difference may need one full counter range added if one wrap occurred and there was no reset.

D

Data plane
The data plane is the part of a network device that handles arriving packets by applying installed forwarding or match-plus-action rules.
A router uses its data plane to send a datagram through the interface named by the matching entry.
Default route
A default route is a forwarding route that matches destinations lacking a more specific route; IPv4 represents it as 0.0.0.0/0.
A single-exit customer sends otherwise unmatched external traffic toward its only provider.
Designated router
An OSPF designated router (DR) represents a broadcast network in a network-LSA and reduces the need for full pairwise adjacencies.
Ordinary LAN routers synchronize with the DR and BDR instead of forming a full mesh of adjacencies.
Dijkstra’s algorithm
Dijkstra’s algorithm finds least-cost paths with nonnegative edge weights by repeatedly finalizing the smallest unsettled cost estimate.
The source settles a router at cost 2 before an unsettled router whose best known cost is 6.
Distance vector
A distance vector is a router’s collection of estimated least costs to destinations, advertised to directly connected neighbors.
A router can learn a cheap route to a destination from a neighbor’s vector without knowing which links that neighbor uses beyond itself.
Dynamic routing
Dynamic routing recomputes routes in response to changed topology or routing information through a protocol’s automatic exchanges.
A failed link can trigger new routing information without an operator manually replacing every route.

E

eBGP
External BGP (eBGP) is a BGP session between speakers in different autonomous systems, used to exchange reachability across AS boundaries.
A university gateway exchanges eBGP routes with a router belonging to its transit provider.
Equal-cost multipath
Equal-cost multipath (ECMP) retains multiple next hops whose complete paths have the same least cost, allowing traffic distribution.
Two paths costing 7 can both be used even if their first-link costs and numbers of hops differ.
Export policy
An export policy decides which routes an AS advertises to each neighbor, determining the transit service it offers that neighbor.
A network can use a provider-learned route locally without announcing it to a second provider.

F

Flow-mod
A flow-mod message tells an OpenFlow switch to add, modify, or delete flow entries, changing rules for later matching packets.
After path recomputation, flow-mod installs forwarding changes in the switches along the replacement route.
Flow-table entry
A flow-table entry specifies packet matches, priority, counters, actions, and timeouts that govern how matching traffic is handled.
If two entries match in one table, the higher-priority entry determines the packet’s handling.

G

Gateway router
A gateway router sits at an AS boundary and connects its network to another AS, providing an entry or exit for external traffic.
An internal router can send toward a gateway through several internal hops before traffic leaves the AS.
Global routing algorithm
A global routing algorithm computes routes using the complete topology and all relevant link costs, regardless of where the computation runs.
Every OSPF router runs a global algorithm locally after learning the graph for its area.

H

Hello packet
An OSPF Hello packet discovers and maintains neighbors by announcing a router’s presence and information needed for neighbor relationships.
A common LAN configuration sends Hellos every 10 seconds and declares a neighbor down after 40 seconds.
Hot-potato routing
Hot-potato routing chooses the lowest internal cost to a BGP next hop after earlier route-selection criteria have tied.
Two internal routers can choose different exits for the same prefix because their costs to the gateways differ.

I

iBGP
Internal BGP (iBGP) is a BGP session between speakers in one AS, used to spread route information without changing the AS boundary.
A gateway passes a provider-learned route to another internal speaker over an iBGP session.
ICMP
The Internet Control Message Protocol (ICMP) carries network-layer reports and tests inside IP, including delivery errors and echo exchanges.
A router can report an expired packet lifetime to the sender without using TCP or UDP.
ICMP rate limiting
ICMP rate limiting restricts how quickly a device generates control messages, reducing excessive replies while potentially hiding probe responses.
A router may keep forwarding packets while replying to only some of a burst of traceroute probes.
ICMP type and code
An ICMP type and code pair identifies a message category and its detail, such as destination unreachable and the specific port-unreachable case.
In IPv4, type 3 code 3 reports an unused destination port, while code 4 reports fragmentation needed.
Import policy
An import policy decides which received routes are accepted and assigns preferences that influence the local AS’s route selection.
An operator can assign a higher LOCAL_PREF to customer routes than to provider routes.
InformRequest
An InformRequest is an SNMP event notification that expects a response acknowledgment, unlike an unacknowledged trap.
An agent can use an inform when it needs confirmation that the receiver accepted the notification.
Interior gateway protocol
An interior gateway protocol (IGP) distributes routing information for paths inside an autonomous system, such as OSPF or IS-IS.
A router uses its IGP route to resolve how to reach the next-hop address selected by BGP.
Internet exchange point
An Internet exchange point (IXP) provides shared interconnection infrastructure where networks can exchange traffic and establish peering.
Two networks meeting at an IXP still decide which routes their peering agreement allows them to exchange.
IP anycast
IP anycast advertises the same prefix from multiple service locations so ordinary routing selects one reachable instance for a client.
A DNS query can reach a nearby routing choice even though that instance is not geographically closest.

L

Least-cost path
A least-cost path is a path whose sum of link costs is no greater than that of any alternative path between the same endpoints.
If all links cost 1, the least-cost path also uses the fewest hops between the source and destination.
Link cost
A link cost is an operator-selected weight assigned to a connection, representing a routing measure such as speed, delay, or expense.
Two low-cost links can give a cheaper path than one direct link with a high configured weight.
Link utilization
Link utilization is an average observed traffic rate divided by link capacity for the same direction, units, and measurement interval.
An incoming rate of 40 Mbit/s on a 200 Mbit/s link gives 20% incoming utilization.
Link-state advertisement
A link-state advertisement (LSA) is an OSPF record of routing information, such as a router’s links, carried in Link State Update packets.
A new router-LSA removes a failed link from the area’s topology information before paths are recalculated.
Link-state routing
Link-state routing distributes descriptions of attached links so each router can build a topology graph and calculate its own paths.
A router floods a changed link cost, and routers receiving it can recompute their shortest-path trees.
LOCAL_PREF
LOCAL_PREF is an AS-internal BGP attribute expressing the operator’s preference for routes, with higher values preferred first.
A customer route at preference 200 can beat a provider route at 100 even with a longer AS-PATH.
Logical centralization
Logical centralization presents one coherent control service and network view, even when several physical servers implement that service.
Adding controller replicas can improve resilience without moving path decisions into each switch.

M

Management agent
A management agent is device-side software that exposes managed data and exchanges monitoring or control messages with a managing server.
An agent answers a counter request and can also notify the manager when a link goes down.
Management Information Base
A Management Information Base (MIB) defines managed objects in modules, including their names, types, meanings, and permitted access.
An interface MIB defines what a received-byte counter measures before a manager reads its current value.
Maximum-prefix limit
A maximum-prefix limit restricts how many prefixes a neighbor may announce, helping contain unexpectedly large routing advertisements.
A customer suddenly exporting a large external table can exceed the configured session limit.
MED
MED is a BGP attribute suggesting a preferred entry point into a neighboring AS; lower values normally compete only within that neighbor AS.
A low MED from one provider normally does not defeat a route from a different provider.

N

Neighbor Discovery
Neighbor Discovery is the ICMPv6-based set of functions for finding local neighbors and related information, replacing IPv4’s ARP role.
A policy blocking all ICMPv6 would interfere with local IPv6 operation as well as remote error reporting.
NETCONF
NETCONF is a secure session-based protocol using XML remote procedure calls to read, prepare, and change structured device configuration.
A manager discovers capabilities before choosing a workflow using candidate, validate, and commit.
NEXT-HOP
The NEXT-HOP attribute identifies the router address toward which traffic for a selected BGP route should be forwarded.
An internal speaker may need several IGP hops to reach the address named by NEXT-HOP.
Northbound interface
A northbound interface links network-control applications to the controller’s state, event notifications, and rule-installation services.
A routing application subscribes to link-failure notifications through a northbound API.

O

Object identifier
An object identifier (OID) names a managed object within a hierarchical naming tree used by SNMP to identify values being accessed.
An interface-table object also needs an instance identifying which interface supplies the value.
OpenFlow
OpenFlow is a controller–switch protocol for inspecting and programming forwarding behavior and exchanging device events and selected packets.
A controller can use OpenFlow to replace entries that send traffic toward a failed link.
ORIGIN
The ORIGIN attribute records how a route entered BGP, ranked IGP before EGP before INCOMPLETE in the route comparison.
Equal LOCAL_PREF and path length can leave ORIGIN to decide before a router considers applicable MED.
OSPF
OSPF is a link-state interior routing protocol that floods topology information within areas and uses least-cost path calculations.
Changing an OSPF link weight can change a path even when every physical connection remains available.
OSPF adjacency
An OSPF adjacency is a neighbor relationship in which routers synchronize their link-state databases and exchange routing information.
Two routers on a LAN can be neighbors without forming a full adjacency with every other neighbor.
OSPF area
An OSPF area groups routers and links into a detailed flooding and shortest-path scope within a larger autonomous system.
An internal failure updates local topology while an ABR advertises any changed inter-area reachability.

P

Packet Too Big
Packet Too Big is an ICMPv6 error reporting that a forwarded packet exceeds a next-link MTU, allowing the source to reduce its size.
Blocking this message can let small IPv6 packets work while larger packets disappear.
Packet-in
A packet-in message carries a packet or its header from a switch to a controller because configured forwarding behavior requests it.
A table-miss action can send the first packet of a new flow to the controller for reactive setup.
Packet-out
A packet-out message directs an OpenFlow switch to send a specified packet using supplied actions, without itself installing a lasting rule.
A controller can release a buffered packet and separately use flow-mod to handle subsequent traffic.
Path MTU black hole
A path MTU black hole occurs when oversized packets are dropped but the source does not receive the feedback needed to reduce packet size.
A connection can exchange small messages yet stall when it begins sending packets above the hidden limit.
Path MTU discovery
Path MTU discovery lets a source learn packet-size limits along a path using feedback when packets exceed a link’s supported MTU.
An IPv4 sender reduces packet size after receiving fragmentation needed with Don’t Fragment set.
Path-vector protocol
A path-vector protocol advertises a sequence of routing domains with reachability, making path dependencies visible for loop detection.
BGP rejects an advertised AS sequence that already contains the receiving speaker’s own AS number.
Peering
Peering is an agreement in which networks exchange traffic for themselves and their customers, often without settlement payments.
A peer-learned route is normally exported to customers but withheld from another peer.
Ping
Ping tests echo reachability by sending requests to a target and reporting the round-trip times and missing replies from those exchanges.
Nine replies to twelve echo requests give an observed unanswered-request share of 25%.
Poisoned reverse
Poisoned reverse advertises an infinite distance for a destination toward the neighbor currently used as the route’s next hop.
A router whose route to a destination depends on a neighbor tells that neighbor the destination is unreachable through the router.
Port-status
A port-status message reports an OpenFlow switch port’s state change to the controller so network state can be updated.
A down-port event can trigger an application to compute paths that avoid the failed link.
Predecessor
A predecessor is the node immediately before another node on a chosen path, recorded so the path can later be reconstructed backward.
Following the destination’s predecessors to the source reveals the full path and its first hop.
Prefix hijack
A prefix hijack announces unauthorized reachability for a prefix or a more specific part of it, potentially drawing traffic to the wrong AS.
An accepted false /24 can draw matching traffic away from the legitimate covering /22 route.
Probe timeout
A probe timeout occurs when a test receives no matching reply within its waiting interval, leaving the cause of silence unresolved.
Asterisks at one traceroute hop can coexist with replies from routers farther along the path.

R

Reactive rule installation
Reactive rule installation arranges flow rules in response to selected arriving packets, introducing control work before later local forwarding.
After the first packet triggers setup, later packets can match the installed entry without contacting control.
RIP
RIP is a distance-vector interior routing protocol using hop count, with 15 as its largest usable distance and 16 meaning unreachable.
A route advertised at 16 hops is discarded as unusable even if a longer physical path exists.
Round-trip time
A round-trip time (RTT) measures the elapsed time from sending a probe to receiving its reply, including outward and return travel.
A high router RTT can include slow reply generation even when later probes are forwarded promptly.
Route leak
A route leak propagates learned routes beyond their intended export-policy boundary, such as between a customer’s two providers.
A leaked route can retain the authorized origin while causing an unprepared network to carry transit traffic.
Route Origin Authorization
A Route Origin Authorization (ROA) permits an ASN to originate routes within a prefix, subject to a stated maximum prefix length.
A maximum length of /24 rejects a /25 even when the originating ASN is the authorized one.
Route origin validation
Route origin validation compares a route’s prefix, length, and origin with validated authorizations and returns valid, invalid, or not found.
A valid origin result leaves transit-path authenticity and commercial export policy unchecked.
Route reflector
A route reflector distributes iBGP routes among clients, reducing the need for a full mesh of sessions between all BGP speakers.
A large AS can reduce internal BGP session count while continuing to use an IGP for internal packet paths.
Route withdrawal
A route withdrawal tells a BGP neighbor that previously advertised reachability is no longer being offered through that advertisement.
A session failure causes routes learned through the session to be removed and alternatives reconsidered.
Routing oscillation
Routing oscillation is repeated switching between paths, which can occur when traffic changes link costs and routers react together.
Routers move onto an idle path, raise its load-based cost, then move away at the next calculation.
RPKI
The Resource Public Key Infrastructure (RPKI) supports signed authorizations linking address resources to permitted route origin AS numbers.
Routers use validated RPKI data to check whether an announcement’s origin and length are authorized.
Running datastore
The running datastore holds a device’s active NETCONF configuration, which determines its current configured behavior.
Editing a candidate does not change running until a supported commit activates the prepared configuration.

S

SDN controller
An SDN controller maintains network-wide state and provides the interfaces through which applications communicate decisions to devices.
A controller cluster can expose one coherent service while spreading its implementation across servers.
Shortest-path tree
A shortest-path tree connects one source to reachable destinations using selected least-cost paths, with the source as the root.
The same link-state graph gives different rooted trees when different routers run the calculation.
SNMP
The Simple Network Management Protocol (SNMP) reads and changes managed objects through device agents and supports event notifications.
A manager polls received-byte counters over SNMP to track a link’s incoming utilization.
SNMPv3
SNMPv3 adds security mechanisms for authenticated and encrypted management messages and controls which objects a user may access.
Operators must select settings that enable the protections instead of relying on a plain-text community string.
Software-defined networking
Software-defined networking (SDN) separates programmable control applications from devices that apply installed flow-based forwarding rules.
A routing application can change paths by asking the controller to update switches’ flow entries.
Southbound interface
A southbound interface links a controller to devices for exchanging commands, reported events, configuration, and operational state.
The controller sends OpenFlow flow-mod messages to switches through its southbound communication layer.
Split horizon
Split horizon omits a route from advertisements sent toward the neighbor through which that route was learned or is being used.
A router withholds a dependent route instead of sending it back as a supposed independent alternative.
Startup datastore
The startup datastore is a supported NETCONF configuration store containing the configuration used when the device boots.
An active change and a saved boot configuration serve different purposes and must be managed accordingly.
Streaming telemetry
Streaming telemetry sends ongoing modeled operational data from devices to a collector, reducing reliance on repeated manager polling.
A device can push interface observations at regular intervals while configuration is handled separately.
Summary-LSA
A summary-LSA is an ABR-originated advertisement for inter-area reachability, describing a remote subnet or the path to an ASBR.
A type 3 summary-LSA lets another area learn a subnet’s cost without learning the source area’s whole graph.

T

Table-miss entry
A table-miss entry is a lowest-priority OpenFlow rule that handles packets lacking an ordinary match, for example by sending them to control.
Without a table-miss entry, an unmatched OpenFlow 1.3 packet is dropped by default.
Tentative distance
A tentative distance is the lowest path cost found so far for a node that has not yet been finalized in the shortest-path computation.
A new path through a recently settled neighbor can lower the tentative distance from 9 to 5.
Time exceeded
A time-exceeded report signals that a packet’s allowed lifetime expired, including TTL expiry in transit used to reveal traceroute hops.
A router receiving a probe with TTL 1 can discard it and return an ICMP expiry report to the source.
Traceroute
Traceroute sends probes with increasing TTL or hop limit to reveal responding interfaces at successive positions on a forward path.
A UDP-based trace recognizes arrival when the destination returns port unreachable.
Transit provider
A transit provider carries a customer’s traffic to and from wider Internet destinations under a paid customer–provider relationship.
A customer with two providers withholds one provider’s learned routes from the other to avoid unintended transit.
Trap
A trap is an unsolicited SNMP notification that reports an event without requiring an application-level acknowledgment from the manager.
A link-down trap can reach monitoring software before the next scheduled interface poll.
Triggered update
A triggered update sends changed routing information soon after a change is detected, without waiting for the regular periodic update.
RIP can report a failed route promptly even when the next scheduled table update is still some time away.

Y

YANG
YANG is a data-modeling language defining the structure, types, and constraints of configuration and state data handled by management protocols.
A model can reject an MTU value that fits the integer type but falls below its allowed range.

About this lesson

By StudeliReport a mistake

Make your own Study Materials

Turn your notes, slides and documents into Study Guides, Practice Questions, Flashcards and 6 more tools.

Get Started