Nej Mattias, så fungerar det inte.
För det första så får ni det att låta som att det är RIP som utför själva lastbalanseringen. I routingprotokollet definieras det endast hur många vägar det ska lastbalanseras mellan, alltså hur många vägar som ska finnas med i RIB. Precis som någon skrev ovan är det fyra per default för RIP.
Det är switchmekanismen som avgör vilken väg som faktiskt väljs ur RIB, och har ingenting med routingprotokollet att göra. För Cisco, som jag gissar är fallet eftersom TS fick frågan i ett klassrum, så används CEF (med en del undantag). CEF använder FIB, som i sin tur speglas från RIB, för att (per mest specifika prefix) sortera alla destinationer och dess next-hop. Adjacency tables används för L2-informationen.
Hur valet sedan görs är INTE med Round-Robin, förutsatt att du inte kör "Per packet load balancing", vilket skulle vara ganska korkat då du med all sannolikhet inte kommer få paketen till destinationen i rätt ordning.
Som standard, och av goda skäl, används "Per-destination load balancing". Det borde väl egentligen heta "per flow~" eller liknande för att beskriva dess funktion mer rätt. Valet av väg gjordes, i standardutförandet, bara baserat på destinations- och källadress. Av dessa skapas en hash på fyra bytes. Eftersom 2^4 = 16 så finns det 16 olika möjligheter.
Lastbalanserar du då mellan två länkar (väg1 och väg2), så är det 50% chans att just den SESSIONEN hamnar på väg väg1.
Lastbalanserar du mellan fyra länkar, väg1 - väg4, så är 16/4 = 4 av utgångarna av algoritmen dedikerade till respektive väg; vilket ger 25% chans/väg.
Balanseringen blir således effektivare ju fler vägar du har att välja mellan.
Problemet?
Om fler routrar använder samma algoritm och har samma ingångsvärden så kommer den ju alltid komma fram till samma förslag.
Därför lades ett, för routern, unikt 32-bitarsvärde till som ingångsvärde för hashing-funktionen.
Många förenklade sanningar ovan, men förhoppningsvis ger det en uppfattning i alla fall.
/J