]>
Commit | Line | Data |
---|---|---|
58ef912c MM |
1 | Core |
2 | ~~~~ | |
f6bd2066 | 3 | - static: check validity of route destination? |
dce26783 | 4 | - static: allow specifying a per-route filter program for setting route attributes? |
98e87c86 | 5 | |
7de45ba4 | 6 | - krt: rescan interfaces when route addition fails? |
707ef833 | 7 | |
707ef833 MM |
8 | - tagging of external routes? |
9 | ||
bff1db76 MM |
10 | Commands |
11 | ~~~~~~~~ | |
839380d7 | 12 | - show status |
476e1084 | 13 | - showing of routing table as seen by given protocol |
ee76a92a | 14 | - printing of dynamic attributes |
50fe90ed | 15 | |
476e1084 MM |
16 | Documentation |
17 | ~~~~~~~~~~~~~ | |
18 | - write doctool | |
19 | - write documentation :| | |
bff1db76 | 20 | |
4b87e256 | 21 | Globals |
b5fe3dc2 MM |
22 | ~~~~~~~ |
23 | - right usage of DBG vs. debug | |
24 | - cleanup debugging calls | |
25 | - logging and tracing; use appropriate log levels | |
26 | - check incoming packets and log errors!! | |
832fa033 | 27 | - check log calls for trailing newlines and log levels followed by comma |
b5fe3dc2 | 28 | - check if all protocols set proper packet priorities and TTL's. |
6accdf4f | 29 | - replace all NUM, IPA and expr tokens by constant filter expressions |
b982b6db | 30 | - try compiling with -Wunused |
5a99ade4 | 31 | - does everybody test return value of sk_open? |
4b87e256 MM |
32 | - doc: references to RFC's we did follow |
33 | - protocols: implement CLI hooks and per-procotol CLI commands | |
d272fe22 | 34 | - protocols: implement reconfigure hook |
6aea8905 | 35 | - protocols: use locking |
b5fe3dc2 MM |
36 | |
37 | Various ideas | |
38 | ~~~~~~~~~~~~~ | |
85053fce | 39 | - netlink: import Linux route attributes to our rta's, so that they can be filtered? |
aee539f2 | 40 | - config: executable config files |
e69e4ed9 | 41 | - client: access control |
85053fce MM |
42 | - config: when parsing prefix, check zero bits |
43 | - io: use poll if available | |
e69e4ed9 | 44 | - IPv6 router advertisements |
b5fe3dc2 MM |
45 | - real multipath (doesn't seem to be simple at all :() |
46 | - fake multipath (even less simple) | |
12be9b8c | 47 | - route recalculation timing and flap dampening [see RFC2439 for algorithms] |
dce26783 | 48 | - aggregate engine: standard route aggregation and summarization [RFC2519] |
b5fe3dc2 MM |
49 | - aggregate engine: injection of manually configured pseudo-static routes |
50 | - generate default route if any working BGP connection exists (aggregate engine again?) | |
51 | - generate default route to IGP's (aggregate engine yet another time?) | |
dce26783 | 52 | - look at RFC 2386 (QoS-based routing) |
58ef912c | 53 | |
58ef912c | 54 | |
18c8241a MM |
55 | RIP |
56 | ~~~ | |
58ef912c | 57 | |
18c8241a MM |
58 | OSPF |
59 | ~~~~ | |
67ece6df | 60 | - refuse running on non-multicast devices |
18c8241a | 61 | - importing of device routes for networks where we don't run OSPF |
12be9b8c | 62 | - check incoming packets using neighbor cache |
12be9b8c | 63 | - RFC2328 appendix E: Use a better algorithm |
18c8241a | 64 | - automatic generation of external route tags (RFC1403) |
12be9b8c MM |
65 | - RFC1587 NSSA areas |
66 | - RFC2370 opaque LSA's | |
12be9b8c | 67 | - respect interface MTU and try not to create larger packets unless unavoidable |