Thanks Balaji, thats cleared my doubts. I will dive into the code and understand internals.
On Thu, Oct 29, 2015 at 2:18 PM, Balaji G <[email protected]> wrote: > > > On Thu, Oct 29, 2015 at 1:09 PM, srujan k <[email protected]> wrote: > >> Thanks Balaji. So Zserv daemon maintains RIB and other routing protocol >> daemons sends their best route to Zserv and Zserv will update the same in >> to FIB. >> >> How Zserv and other daemons (for example ospfd) will communicate? >> > zapi_ipv4_route() takes care of creating the message with the prefix and > sends it to Zserv > > >> Is there any keep alive messages will be sent between 2 and how Zserv >> will determine the route sent by ospfd is old/new >> > Why do you need keepalives between ospfd and zserv. zserv will lookup the > routing node to check if the node exists and if it exists, it goes through > the route parameters to check if there is any change in the new route that > is being sent and then decides. > > >> . What happens if RIB entries were became stale(the hardware shut down). >> > The routes in the RTM should get removed. > >> >> Does Zserv will keep RIB entries in Linked list or hash table data >> structure. I assume FIB/Routing table entries will be stored in Trie data >> structure. >> > Its a Trie Data structure. Hash is generally used for routing caches as > far as i know. > >> >> Is there any command to dump RIB entries on console/file? >> > show ip route displays the routing table > > Thanks, > - Balaji > > >> Regards, >> Srujan >> >> On Thu, Oct 29, 2015 at 12:53 PM, Balaji G <[email protected]> wrote: >> >>> To make things more clear, the routing protocols send messages to Zserv >>> daemon to add/delete routes from RIB and Zserv sends Netlink messages to >>> the kernel to update the FIB. >>> >>>> >>> On Thu, Oct 29, 2015 at 12:48 PM, Balaji G <[email protected]> wrote: >>> >>>> Hi, >>>> >>>> On Thu, Oct 29, 2015 at 12:11 PM, srujan k <[email protected]> >>>> wrote: >>>> >>>>> Hi DevTeam, >>>>> What is the difference between FIB and RIB. Does zebra updates RIB or >>>>> FIB. >>>>> >>>> RIB is a data structure maintained by RTM (Zserv). FIB is maintained in >>>> the kernel or Network Processors(in enterprise routers). In Quagga, all >>>> protocols send messages to Zserv which updates the RIB and also sends a >>>> Netlink message to kernel to update FIB. >>>> >>> >>>> >>>>> I assume the consolidated routes from routing protocols(rip,ospf) or >>>>> static routing will be given to zebra and then zebra daemon will update >>>>> these routes into kernel routing table via netlink sockets. >>>>> >>>> when any routing protocol adds route in its own native RIB, the best >>>> route based on routing protocol's decision making algorithm is sent to RTM. >>>> The RTM based on administrative distance and other parameters compares the >>>> routes sent by many routing protocols and marks a particular route as best >>>> and valid and sends the same down to FIB. >>>> >>>>> >>>>> I am bit confused about RIB and FIB. >>>>> >>>> Does our quagga updates any of these protocols. >>>> Quagga contains many routing protocols. I dont understand what you mean >>>> by whether quagga updates protocols here ? >>>> >>>> >>>>> From google I found that FIB will be used by dataplane to actually >>>>> forward packets. >>>>> >>>> Yes FIB is used for fast path forwarding a.k.a H/w forwarding in case >>>> of enterprise which is done by NPs/ASICs too. >>>> Since quagga is control plane software does it writes/updates RIB >>>> table. >>>> Answered above >>>> >>>> Thanks, >>>> - Balaji >>>> >>>>> >>>>> Regards, >>>>> Srujan >>>>> >>>>> _______________________________________________ >>>>> Quagga-dev mailing list >>>>> [email protected] >>>>> https://lists.quagga.net/mailman/listinfo/quagga-dev >>>>> >>>> >>>> >>> >> >
_______________________________________________ Quagga-dev mailing list [email protected] https://lists.quagga.net/mailman/listinfo/quagga-dev
