Hi, there is something I don't understand about OpenBGPD and the decision process implemented.
My understanding of how the decision process in OpenBGPD works is this: The OpenBGPD client stores paths in a list associated to an adress prefix. If a new route is learnt, the best path is reevaluated via prefix_evaluate in rde_decide.c. prefix_evaluate looks for the right place to insert a new path in the list by comparing the new path with the others one at the time via prefix_cmp, starting from the end of the list. This procedure seems to be non deterministic and the outcome of this path selection process heavily depends on the order in which the paths are inserted. It is quite easy to construct a simple example for this. Cisco avoids the indeterminacy by adding the flag bgp deterministic-med. If the flag is set, the decision process is different (the paths are first grouped together by AS of the peer, from which the path was learnt, the "best ones" per AS then are compared among each other). So the question is: Is my understanding of the decision process in OpenBGPD wrong, did I overlook something, or was the additional flag not implemented on purpose and the decision process just IS non deterministic ? Kind regards Daniel Lyons -- View this message in context: http://www.nabble.com/OpenBGPD-decision-process-non-deterministic---tp16743362p16743362.html Sent from the openbsd user - misc mailing list archive at Nabble.com.