> BTW, why Babel accepts unfeasible updates of non-selected routes? It will > not cause problems as such route cannot be selected later (due to its > unfeasibility) but it seems strange.
Yeah, very good question. It's counterintuitive for me too, but it turns out to work better that way: 1. Having an unfeasible route available makes it possible to use it for fallback after a single seqno increase. If the route were not in your routing table at all, you'd need to acquire it after your selected route disappears, which may take some time, and will require even more time for things like link quality and hysteresis to converge. 2. Having an unfeasible route available makes it available for sending unicast requests (Section 3.8.1.2, fourth paragraph). 3. If the metric is non-isotonic, the best route might actually be unfeasible (in which case you'll need to send a request to select it, but everything will work out in the end). Yeah, non-isotonic metrics are strange, but they do exist in nature. -- Juliusz
