Revision 18c8241a TODO

View differences:

TODO
1 1
Core
2 2
~~~~
3
- route validation
4 3
- fake multipath?
5 4
- config file: symbolic constants?
6 5
- counters (according to SNMP MIB?)
7 6
- generation of subnet mask ICMP's for v6?
8
- debugging dumps and protocol tracing!
9 7
- unaligned accesses?
8
- neighbor cache: local broadcast address?
9
- ipv4: recognize site scope addresses?
10
- ifdef out some debugging code?
11
- better memory allocators
12
- precedence of all packets (incl. TCP)
13
- default preferences of protocols: prefer BGP over OSPF/RIP external routes?
14
- all internal tables are in host order
10 15

  
16
- filter: logging of dropped routes (?)
17
- limitation of memory consumption: per-process and total (?)
18
- alloca
19
- adding of route: clear all bits not covered by masklen
20
- switch: generate default route only if at least one BGP connection exists
11 21

  
12
RIP
13
~~~
14
- RIP: export-only and import-only mode?
15
- drop RIPv1 (Historic protocol)?
16

  
17
OSPF
18
~~~~
19

  
20
Almquist & Kastenholz                                         [Page 111]
21
RFC 1716          Towards Requirements for IP Routers      November 1994
22
- route recalculation timing + flap dampening
22 23

  
24
- reconfiguration without restart of all protocols?
25
- change of interface address: ??? (down and up?)
26
- "generate default route" switch for all IGP's
23 27

  
24
7.2.2.2  Specific Issues
28
- running protocol on an interface:
29
	- interface is not required to exist
30
	- can specify a wildcard pattern or an interface list
25 31

  
26
         Virtual Links
32
- timers - one-shot and periodic, resolution 1 sec, randomized
33
- re-configuration: restart of routing protocols (shutdown mode)
34
- route: originating AS
27 35

  
28
              There is a minor error in the specification that can cause
29
              routing loops when all of the following conditions are
30
              simultaneously true:
36
- Check incoming packets and log errors!!
31 37

  
32
              (1)  A virtual link is configured through a transit area,
33 38

  
34
              (2)  Two separate paths exist, each having the same
35
                   endpoints, but one utilizing only non-virtual
36
                   backbone links, and the other using links in the
37
                   transit area, and
39
RIP
40
~~~
41
	- RIP: export-only and import-only mode?
42
	- drop RIPv1 (Historic protocol)?
43
	- Route Tag
44
	- limit routing table xfer (frequency, only to neighbors)
45
	- multicast on/off
46
	- remember routes for all neighbors?
38 47

  
39
              (3)  The latter path is part of the (underlying physical
40
                   representation of the) configured virtual link,
41
                   routing loops may occur.
48
OSPF
49
~~~~
50
	- Dijkstra: use Fibonacci heaps?
51
	- point-to-point interface with address: advertise as stub network
52
	- static routes: stub networks?
53
	- modes: PtP, PtP-unnumbered, Broadcast, NBMA, point-to-multipoint
54
	- importing of device routes for networks where we don't run OSPF
55
	- tie breaking for equal type 2 ext metrics by using internal (type 1) metric
56
	- SPF tree recalc timing (per-area timers?)
57
	- aggregation: specify network list for each area
58
	- stub area: either no external routes or only default route
59
	- automatic generation of external route tags (RFC1403)
42 60

  
43
              To prevent this, an implementation of OSPF SHOULD invoke
44
              the calculation in Section 16.3 of [ROUTE:1] whenever any
45
              part of the path to the destination is a virtual link (the
46
              specification only says this is necessary when the first
47
              hop is a virtual link).
48 61

  
49 62
BGP
50 63
~~~
51
- BGP:
52 64
	- in, local, out RIB
53 65
	- maxsize=4096
54 66
	- BGP identifier aka router id
55
	- removal of loops
67
	- detection of loops
56 68
	- aggregation, ATOMIC_AGGREGATE
57 69
	- communities
58 70
	- confederations
......
71 83
	- expected neighbor AS
72 84
	- hold time
73 85
	- idle timer after error: initial value, exponential growth, maximum value
74

  
75
- address testing macros (ALL_ZEROS)
76
- all internal tables are in network order (?)
77
- logging of errors and debug dumps
78
- filter: logging of dropped routes (?)
79
- limitation of memory consumption: per-process and total
80
- alloca
81
- precedence of all packets (incl. TCP)
82
- adding of route: clear all bits not covered by masklen
83
- switch: generate default route only if at least one BGP connection exists
84

  
85
- route update: new, change, remove
86
- route recalculation timing
87

  
88
- CONFIG_TOS
89
- CONFIG_MULTIPATH
90

  
91
- reconfiguration without restart of all protocols?
92
- change of interface address: ??? (down and up?)
93
- "generate default route" switch for all IGP's
94

  
95
- RIPv2:
96
	- Route Tag
97
	- limit routing table xfer (frequency, only to neighbors)
98
	- multicast on/off
99
	- remember routes for all neighbors?
100

  
101
- BGP:
102 86
	- import of IGP routes (use external route tags from OSPF)
103

  
104
- Interface:
105
	- RIP metric
106
	- multicast capability flag
107
	- MTU
108
	- OSPF metrics (per-TOS)
109

  
110
- running protocol on an interface:
111
	- interface is not required to exist
112
	- can specify a wildcard pattern or an interface list
113

  
114
- preferences:
115
	- directly connected
116
	- static
117
	- OSPF internal, OSPF ext type 1 (comparable metrics), OSPF inter-area
118
	- RIP
119
	- BGP
120
	- OSPF ext type 2
121
	- sink
122

  
123
- lib:
124
	- MD5
125

  
126
- OSPF:
127
	- Dijkstra: use Fibonacci heaps?
128
	- point-to-point interface with address: advertise as stub network
129
	- static routes: stub networks?
130
	- modes: PtP, PtP-unnumbered, Broadcast, NBMA, point-to-multipoint
131
	- importing of device routes for networks where we don't run OSPF
132
	- tie breaking for equal type 2 ext metrics by using internal (type 1) metric
133
	- SPF tree recalc timing (per-area timers?)
134
	- aggregation: specify network list for each area
135
	- stub area: either no external routes or only default route
136
	- automatic generation of external route tags (RFC1403) -- what about
137
	  using the same rule for RIPv2? [shared code?]
138

  
139
- timers - one-shot and periodic, resolution 1 sec, randomized
140
- re-configuration: restart of routing protocols (shutdown mode)
141
- route: originating AS
142

  
143
- Check incoming packets and log errors!!

Also available in: Unified diff