netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Magesh  M P" <magesh@digitizethings.com>
To: Stephen Hemminger <stephen@networkplumber.org>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Subject: Re: gateway field missing in netlink message
Date: Wed, 11 May 2022 05:35:21 +0000	[thread overview]
Message-ID: <DM5PR20MB2055B826355ED50BFCF602C8AEC89@DM5PR20MB2055.namprd20.prod.outlook.com> (raw)
In-Reply-To: <DM5PR20MB2055EBCA16DFB527A7E9A32FAEC89@DM5PR20MB2055.namprd20.prod.outlook.com>


 
Hi Steve/Dave
 
Could you please confirm that VPP during synchronization of routing table with Linux kernel in case of dual gateway ECMP configuration gets only single route in the netlink message is a known bug ?? 
 
I am using VPP 21.06 version.
 
Regards
Magesh 
 
 
  
From: Stephen Hemminger
Sent: 09 May 2022 20:35
To: Magesh M P
Cc: David Ahern
Subject: Re: gateway field missing in netlink message
 
On Mon, 9 May 2022 06:55:46 +0000
"Magesh  M P" <magesh@digitizethings.com> wrote:

> Hi Steve/Dave,
> 
> Thank you very much for great support and sharing the knowledge.
> 
> Dave referred me the file iproute.c but this contains the flow from user space to kernel.
> 
> In my problematic scenario, the use case is from Linux kernel to VPP kernel and this is where my parser at vpp kernel is not doing its work properly. The VPP stack tries to synchronize the routing table information from Linux kernel through netlink messages.
> 
> My file netns.c looks like the following:
> vpp-netlink/netns.c at master · Oryon/vpp-netlink · GitHub<https://github.com/Oryon/vpp-netlink/blob/master/librtnl/netns.c>
> 
> I tried to implement the parser logic as shown in the following link but that did not help.
> Parsing the RTA_MULTIPATH attribute from Rtnetlink | Eder L. Fernandes (ederlf.website)<https://ederlf.website/post/netlink-multipath/>
> 
> I see only one gateway in parsing the RTA_MULTIPATH attribute inspite when I had configured dual gateways.
> 
> The existing code in netns.c works fine for single gateway ip route configuration and it fails in dual gateway ECMP case.
> 
> Your help is greatly appreciated.
> 
> Best regards
> Magesh
> 
> 
> Sent from Mail<https://go.microsoft.com/fwlink/?LinkId=550986> for Windows
> 
> From: Stephen Hemminger<mailto:stephen@networkplumber.org>
> Sent: 05 May 2022 21:58
> To: Magesh M P<mailto:magesh@digitizethings.com>
> Cc: David Ahern<mailto:dsahern@gmail.com>
> Subject: Re: gateway field missing in netlink message
> 
> Have you considered using libmnl it is good way to handle the
> low level parts of netlink parsing.
> 
> https://www.netfilter.org/projects/libmnl/


Have you looked at other routing projects that handle multipath like:

https://github.com/FRRouting/frr/blob/master/zebra/rt_netlink.c

 

  parent reply	other threads:[~2022-05-11  5:35 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-04  6:46 gateway field missing in netlink message Magesh  M P
2022-05-04 22:31 ` David Ahern
2022-05-05  3:43   ` Magesh  M P
2022-05-05  3:49     ` Stephen Hemminger
     [not found]       ` <DM5PR20MB20556090A88575E4F55F1EDAAEC29@DM5PR20MB2055.namprd20.prod.outlook.com>
     [not found]         ` <DM5PR20MB2055F01D55F6F7307B50182EAEC29@DM5PR20MB2055.namprd20.prod.outlook.com>
     [not found]           ` <20220505092851.79d3375a@hermes.local>
     [not found]             ` <DM5PR20MB2055542FB35F8CA770178F9AAEC69@DM5PR20MB2055.namprd20.prod.outlook.com>
2022-05-09  6:59               ` Magesh  M P
2022-05-09 15:32                 ` David Ahern
     [not found]               ` <20220509080511.1893a939@hermes.local>
     [not found]                 ` <DM5PR20MB2055EBCA16DFB527A7E9A32FAEC89@DM5PR20MB2055.namprd20.prod.outlook.com>
2022-05-11  5:35                   ` Magesh  M P [this message]
2022-05-11 15:56                     ` Stephen Hemminger
2022-05-11 16:25                       ` David Ahern
2022-05-05  3:50     ` Stephen Hemminger
2022-05-05  4:14       ` Magesh  M P
2022-05-05  4:13     ` David Ahern
2022-05-12  6:33 Magesh  M P
2022-05-19  6:11 Magesh  M P

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DM5PR20MB2055B826355ED50BFCF602C8AEC89@DM5PR20MB2055.namprd20.prod.outlook.com \
    --to=magesh@digitizethings.com \
    --cc=dsahern@gmail.com \
    --cc=netdev@vger.kernel.org \
    --cc=stephen@networkplumber.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).