From: Juliusz Chroboczek <jch@irif.fr>
To: Dave Taht <dave.taht@gmail.com>
Cc: Herbert Wolverson <herberticus@gmail.com>,
libreqos@lists.bufferbloat.net
Subject: Re: [LibreQoS] routing protocols and daemons
Date: Sat, 29 Oct 2022 11:15:27 +0200 [thread overview]
Message-ID: <87leozuh1s.wl-jch@irif.fr> (raw)
In-Reply-To: <CAA93jw4yTW_h5LhVe5hJm+5BMEmSs375dNLG5kaHLa-3uW2_Dg@mail.gmail.com>
> our toasts to the builders of Notre-Dame.
...which then burnt down :-/
> Dijkstra's algorithm remains a very natural approach to mapping a
> graph
I'm not sure what that means. Dijkstra's is a shortest path algorithm,
it's not in the business of mapping. I guess the author meant that
representing a graph as an adjacency list (the LSDB) is natural, which is
certainly true, but in no way specific to OSPF.
> I don't suppose you have ever had any ideas to how to improve things?
Modern OSPF and IS-IS have pretty much reached a local optimum: all the
low-hanging fruit has been picked, I doubt there's much that can still be
done to improve them without a complete redesign. Well-implemented OSPF
and IS-IS work beautifully in a well-administered network, any other
protocol is going to converge slower and give less visibility into the
network.
On the other hand, OSPF is extremely fragile in the presence of bad
implementation. If two routers have the same id, OSPF is going to create
routing pathologies. If a router corrupts its LSDB (for example due to
bad RAM), OSPF will create routing pathologies which will only go away
once the faulty LSA expires (30 minutes worst case). If a router runs out
of memory for its LSDB, it needs to stop participating in the protocol,
lest it cause routing pathologies (IS-IS has the overload bit to deal with
this case, which causes the router to become a stub router). Compare this
with distance vector, where a corrupt routing table entry will only
interfere with the traffic to that particular destination, and where it is
perfectly correct to run with a partial routing table.
OSPF also requires a skilled administrator. Splitting a network into
areas without causing suboptimal routing takes significant skill, route
filtering can only happen on area boundaries, and there are multiple
different ways of redistributing routes into OSPF (external LSAs).
In my opinion, you want to be running OSPF in parts of your network that
are implemented with reliable gear and are managed by a competent
administrator, but you'll prefer a modern distance-vector protocol
(somebody mentioned Babel) where the hardware is cheap and the
administator is busy with other things. Fortunately, due to the
flexibility of route redistribution in distance-vector protocols, you can
do both: a stable backbone using OSPF, and unadministered Babel bits at
the edges.
-- Juliusz
next prev parent reply other threads:[~2022-10-29 9:15 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-26 20:29 Dave Taht
2022-10-26 20:53 ` Herbert Wolverson
2022-10-26 21:38 ` Dave Taht
2022-10-26 22:35 ` dan
2022-10-27 13:29 ` Herbert Wolverson
2022-10-27 15:29 ` Mark Steckel
2022-10-27 16:35 ` Dave Taht
2022-10-28 21:47 ` Juliusz Chroboczek
2022-10-28 21:45 ` Juliusz Chroboczek
2022-10-29 0:01 ` Dave Taht
2022-10-29 0:34 ` Dave Taht
2022-10-29 9:15 ` Juliusz Chroboczek [this message]
2022-10-29 13:48 ` Herbert Wolverson
2022-10-29 14:13 ` dan
2022-10-29 22:18 ` Juliusz Chroboczek
2022-10-30 0:09 ` dan
2022-10-30 13:42 ` Juliusz Chroboczek
2022-10-29 20:11 ` Juliusz Chroboczek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://lists.bufferbloat.net/postorius/lists/libreqos.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87leozuh1s.wl-jch@irif.fr \
--to=jch@irif.fr \
--cc=dave.taht@gmail.com \
--cc=herberticus@gmail.com \
--cc=libreqos@lists.bufferbloat.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox