Link-state routing differs from distance-vector routing in that each router knows the exact topology of the
network. This reduces the number of bad routing decisions that can be made because every router in the
process has an identical view of the network. Each router in the network will report on its state, the directly
connected links, and the state of each link. The router will then propagate this information to all routers in
the network. Each router that receives this information will take a snapshot of the information. This ensures
all routers in the process have the same view of the network, allowing each router to make its own routing
decisions based upon the same information.
In addition, link-state routing protocols generate routing updates only when there is a change in the network
topology. When a link, i.e., a point on a route, changes state, a link-state advertisement (LSA) concerning
that link is created by the device that detected the change and propagated to all neighboring devices using a
multicast address. Each routing device takes a copy of the LSA, updates its topological database and
forwards the LSA to all neighboring devices. An LSA is generated for each link on a router. Each LSA will
include an identifier for the link, the state of the link, and a metric for the link. With the use of LSAs, linkstate
protocols reduces routing bandwidth usage.
Examples of link-state routing protocols
are: Open Shortest Path First (OSPF) and Integrated Intermediate
System to Intermediate System (IS-IS). Another protocol, Enhanced
Interior Gateway Routing Protocol (EIGRP) is considered a hybrid
protocol because it contains traits of both distance-vector
and link-state routing protocols. Most link-state routing protocols
require a hierarchical design, especially to support proper
address summarization. The hierarchical approach, such as creating
multiple logical areas for OSPF, reduces the need to flood an
LSA to all devices in the routing domain. The use of areas restricts
the flooding to the logical boundary of the area rather than
to all devices in the OSPF domain. In other words, a change
in one area should only cause routing table recalculation in
that area, not in the entire domain.