TODO 1.88 KB
Newer Older
1 2
Core
~~~~
3 4 5 6
- socket open failure should not be fatal
- &&,||: priorities
- client: `?' in BGP masks
- filters: function for BGP path length
7
- static: allow specifying a per-route filter program for setting route attributes?
8

9
Globals
Martin Mareš's avatar
Martin Mareš committed
10 11 12 13
~~~~~~~
- right usage of DBG vs. debug
- logging and tracing; use appropriate log levels
- check incoming packets and log errors!!
14
- check log calls for trailing newlines and log levels followed by comma
Martin Mareš's avatar
Martin Mareš committed
15
- check if all protocols set proper packet priorities and TTL's.
16
- try compiling with -Wunused
17
- does everybody test return value of sk_open?
18
- protocols: implement CLI hooks and per-procotol CLI commands
19
- protocols: implement reconfigure hook
20
- protocols: use locking
21
- check use of system includes and sprintf()
Martin Mareš's avatar
Martin Mareš committed
22 23 24

Various ideas
~~~~~~~~~~~~~
25 26
- client: paging of output
- client: Ctrl-R eats one more enter
27
- bgp: timing of updates?
28
- netlink: realms
29
- netlink: import Linux route attributes to our rta's, so that they can be filtered?
30
- config: executable config files
31
- filters: user defined attributes?
32
- client: access control
33
- io: use poll if available
34
- IPv6 router advertisements
Martin Mareš's avatar
Martin Mareš committed
35 36
- real multipath (doesn't seem to be simple at all :()
- fake multipath (even less simple)
Martin Mareš's avatar
Martin Mareš committed
37
- route recalculation timing and flap dampening [see RFC2439 for algorithms]
38
- aggregate engine: standard route aggregation and summarization [RFC2519]
Martin Mareš's avatar
Martin Mareš committed
39 40 41
- aggregate engine: injection of manually configured pseudo-static routes
- generate default route if any working BGP connection exists (aggregate engine again?)
- generate default route to IGP's (aggregate engine yet another time?)
42
- look at RFC 2386 (QoS-based routing)
43
- cli: show tables?
44

45 46
OSPF
~~~~
Martin Mareš's avatar
Martin Mareš committed
47 48
	- check incoming packets using neighbor cache
	- RFC2328 appendix E: Use a better algorithm
49
	- automatic generation of external route tags (RFC1403)
Martin Mareš's avatar
Martin Mareš committed
50 51
	- RFC1587 NSSA areas
	- RFC2370 opaque LSA's
Ondřej Filip's avatar
Ondřej Filip committed
52
        - Limit export rate of external LSAs (like Gated does)