[dev] some questions about zebra in frr
Donald Sharp
sharpd at cumulusnetworks.com
Mon Apr 29 09:40:49 EDT 2019
Because FRR supports src/dest routing, please see:
https://tools.ietf.org/html/draft-baker-ipv6-isis-dst-src-routing-07
effectively we need the ability to select on the destination and then
have a sub table for all the different sources associated with that
particular dest.
donald
On Mon, Apr 29, 2019 at 8:40 AM sudhanshu kumar <sudhanshu22 at gmail.com> wrote:
>
> Hi,
> Thanks for the reply. But my question was why there are 2 types of node in "struct route_node". (MTYPE_ROUTE_SRC_NODE and MTYPE_ROUTE_NODE).
> e.g., rnode_is_srcnode() and rnode_is_dstnode() .
>
> Thanks,
> Sudhanshu
>
> On Mon, Apr 29, 2019 at 5:05 PM Donald Sharp <sharpd at cumulusnetworks.com> wrote:
>>
>> `struct route_node` -> Table route node data structure contains the
>> prefix and some small additional data useful for keeping track of the
>> node in the table.
>> `struct rib_dest_t` -> A rib node that we have received data about it
>> from an upper level protocol. Contains some additional tracking
>> information that zebra needs to keep track of in relation to the
>> particular prefix in the rib. We do not create a rib_dest_t per
>> route_node. We only create a rib_dest_t( with one caveat ) per
>> routing entry given to zebra.
>> `struct route_entry` -> A route handed to us from another protocol.
>> We can have one of these per protocol running possibly. zebra needs
>> to track the different protocols attempting to install as well as some
>> additional data unique to that route. Zebra chooses one of these
>> route entries to install into the kernel.
>>
>> I cannot answer the second question.
>>
>> donald
>>
>> On Mon, Apr 29, 2019 at 6:51 AM sudhanshu kumar <sudhanshu22 at gmail.com> wrote:
>> >
>> > Hi,
>> > I have 2 questions about zebra in frr.
>> > 1. why do we maintain 2 types (source and destination route type) in zebra. I am not sure what source route type means ? Is it the source of the route (like the packet source or the neighbor from which the route got learnt) ?
>> > 2. How does frr routing stack interact with SONIC platform. I see that it has a TCP socket with SONIC which it uses to send messages for all protocols. Is it true ?
>> >
>> > Thanks,
>> > Sudhanshu
>> > ---------- Forwarded message ---------
>> > From: sudhanshu kumar <sudhanshu22 at gmail.com>
>> > Date: Thu, Apr 25, 2019 at 12:06 PM
>> > Subject: help: frr interaction with SONIC
>> > To: <dev-request at lists.frrouting.org>
>> >
>> >
>> > Hi,
>> > I would like to know how does frr routing stack interact with SONIC platform. I see that it has a TCP socket with SONIC which it uses to send messages for all protocols. Is it true ?
>> >
>> > Thanks & Regards,
>> > Sudhanshu
>> > _______________________________________________
>> > dev mailing list
>> > dev at lists.frrouting.org
>> > https://lists.frrouting.org/listinfo/dev
More information about the dev
mailing list