summaryrefslogtreecommitdiff
path: root/usr.sbin/ospfd/rde.h
AgeCommit message (Collapse)Author
2007-06-19add support for mapping route labels to AS-external route tags.Reyk Floeter
manpage bits from jmc@ ok norby@ claudio@
2007-04-10Next step in equal cost multipath support. Make the SPF calculation multipathClaudio Jeker
aware. Both the SPF and RIB trees need additional structures to store the multiple nexthops to the destination but only the first active nexthop is passed to the parent process and used for routing. This is the next thing that needs to be modified. Tested and OK pyr@
2007-04-05remove an unused function.Pierre-Yves Ritschard
ok claudio@
2007-01-29Do not link from the LS DB to outside structures that may vanish beforeClaudio Jeker
the actual LS DB entry is removed. In particular a neighbor may be removed at any time -- we were lucky because we kept down neighbors around for another 24h. Reload support unhided this problem again. Just copy the needed info into the vertex. Pointing to the area is save as the vertex is part of the area itself and removed when the area is removed. OK norby@
2006-05-29Delay lsa database deletes for MIN_LS_INTERVAL seconds so that flappingClaudio Jeker
routes do not cause a update storm. OK norby@
2006-04-25The return value of lsa_num_links is an u_int16_t tnd not int. Found by lint.Claudio Jeker
2006-03-22Move the AS external LSA tree out of struct ospfd_config. This simplifiesClaudio Jeker
the code and makes config reloads easier. OK norby@
2006-03-13The return value of the start/stop timer functions is almost never checked.Claudio Jeker
Switch them to void functions and check if evtimer_add/del fails -- in which case we fatal() as there is no useful way to recover in such an event. OK norby@
2006-02-24Keep track of the uptime of the entries in the RIB.Esben Norby
It is now possible to see the uptime of the individual entries in the RIB. The uptime can be displayed with "ospfctl show rib" ok claudio@
2006-02-10If ABR only look in the backbone area 0.0.0.0 for summary LSA. OK norby@Claudio Jeker
2006-02-02zap cand_list_empty, found by lint.Esben Norby
ok claudio@
2006-01-26Separate route table calculations from the SPF calculation.Esben Norby
ok claudio@
2006-01-24Split SPF calc and AS Ext calc.Esben Norby
Initial diff by claudio@ reworked by me. test and ok claudio@
2006-01-12Rewrite the redistribute code. The previous implementation was stupid andClaudio Jeker
resulted in a major bottleneck if bgpd was used on the same box -- not clever to do linear searches over 175k entries :(. This now moves the redistribute code back into kroute duty and kills the linear list. Also default routes are now redistributed without the need for a kernel default route. OK norby@
2005-08-08Try to do an SPF recalculation only if the LS DB changed.Claudio Jeker
This is still not perfect as on ABRs it is only necessary to recalculate the area that got changed and not all others too. More to come but it is a good start. OK norby@
2005-06-27Mark connected routes (routes without a nexthop) in the rib. Without thisClaudio Jeker
as-ext routes would select a wrong nexthop if the forwarding router is directly connected. OK, help and debugging norby@
2005-06-27Don't let /32 DT_NET routes override DT_RTR routes. This should helpClaudio Jeker
setups with /32 loopback networks. OK norby@
2005-05-27Preparation for upcoming virtual link support.Esben Norby
ok claudio@
2005-05-24Fix some obvious issues in the summary LSA origination.Claudio Jeker
Actually remove summary LSA if the LSA they refer to are no longer valid. Set correct cost on the summary LSA. Announce type 4 summary LSA. OK norby@
2005-05-23First part of summary LSA origination. Not perfect but a start.Claudio Jeker
OK norby@
2005-05-22Handle cost2 for AS-external, and prepare for handling flags inEsben Norby
ospfctl show rib detail. ok claudio@
2005-05-13Cost type 2 will be needed soon.Esben Norby
ok claudio@
2005-05-12Every time a LSA is returned from a lookup lsa_age() it.Claudio Jeker
Also move the lsa_age() prototype to rde.h so that we can access it from the SPF code. OK norby@
2005-05-12Add "show database asbr/external/network/router/self-originate/summary"Esben Norby
to ospfctl. Show detailed information about the LSAs in the Link State Database. ok claudio@
2005-05-08Keep track of the req list in the RDE. The RFC requires us to check forClaudio Jeker
silly updates while fetching the table from the other server. OK norby@
2005-04-12Support for self originated AS-external LSA.Claudio Jeker
With "redistribute (static|connected|default|none)" it is possible to tell ospfd which external routes should be announced. Connected routes will be announced only if there is no corresponding interface configured, in that case the prefix is not external. Adding and removing of announced prefixes are done automaticaly. OK norby@
2005-03-22Remove bool cruft.Esben Norby
ok claudio@
2005-03-12Add "show rib" and "show rib detail" to ospfctl.Esben Norby
ok henning@
2005-03-08Remove no longer valid route entries.Esben Norby
ok claudio@
2005-02-27SPF and route table calculation.Esben Norby
Calculate Shortest Path Tree for each area known in the link state database. The Shortest Path Tree is used as input for route table calculation. Route tabled is calculated and the result is inserted into the kernel route table. ok claudio@
2005-02-09Fix premature ageing of self originating LSA. Still not perfect but betterClaudio Jeker
than before where it just failed to work.
2005-02-09Rework of self originated LSA. First of all the code to generate the LSAClaudio Jeker
is rewritten to use the dynamic buffer api introduced lately. Add missing parts in the RDE to merge these LSA originated from the OE into the LSDB with correct seq_num, etc. Add hooks to the neighbor and interface fsm so that the LSA get updated if needed. This is not perfect, still many things are missing. OK norby@
2005-01-28Change my email address to the OpenBSD one since Ericsson has nothing toEsben Norby
do with this software, just happend to be my only valid email address at the time.
2005-01-28Welcome ospfdClaudio Jeker
started by Esben Norby some time ago by using the imsg/three process framework of bgpd. He implemented the basic concept plus the ospf finite state machines. Later I joined and helped him cleanup, debug and extend his work. Right now it is not particularly useful, major parts are still missing but is imported to allow more people to work on it. status: The basic protocol works for broadcast networks and the LS database is synchronized and updated. It is not possible to be DR or BDR on a network and other interface types like point-to-point are not yet supported. The shortest path tree is not calculated and so no routing information is exchanged with the kernel FIB. Not yet connected to the builds. OK henning@