There is such situation:
Two hosts are connected with two links: one of them is primary and second link is backup one.
<link id="primary" bandwidth="10MBps" state_file="fail.txt"/>
<link id="backup" bandwidth="1MBps" latency="0us"/>
The primary link can fail in some moment of time. In this case hosts must use the second one which isn't allowed for using while primary is OK.
This way of modeling is false
<route src="Host1" dst="Host2">
<link_ctn id="primary"/>
<link_ctn id="primary"/>
</route>
How to model it?
SimGrid does not support multiple routing yet. You would have to develop a new routing schema, derivating the surf::As class and implementing your own routing, but that's not an easy task.