<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hi Donald<div><br></div><div>This is your old email</div><div><br></div><div>Can you please confirm  4.18 linux kernel is the correct version that supports   `--v6-<span class="gmail-il">rr</span>-<span class="gmail-il">semantics'?.</span></div><div><span class="gmail-il"><br></span></div><div><span class="gmail-il">Is  version 4.15.0-36  will be ok also ?.</span></div><div><span class="gmail-il"><br></span></div><div><span class="gmail-il">From:</span></div><div><span class="gmail-il"><a href="http://docs.frrouting.org/en/latest/overview.html#supported-protocols-vs-platform">http://docs.frrouting.org/en/latest/overview.html#supported-protocols-vs-platform</a><br></span></div><div><span class="gmail-il">====================================</span></div><div><span class="gmail-il"><h3 style="box-sizing:border-box;margin-top:0px;font-weight:500;font-family:"Fira Sans",Helvetica,Arial,sans-serif;font-size:20px;color:rgb(64,64,64)">Known Kernel Issues<a class="gmail-headerlink" href="http://docs.frrouting.org/en/latest/overview.html#known-kernel-issues" title="Permalink to this headline" style="box-sizing:border-box;text-decoration:none;display:inline-block;font-stretch:normal;line-height:1;font-family:inherit;font-size:14px"></a></h3><ul style="font-size:16px;box-sizing:border-box;margin:0px 0px 24px;padding:0px;list-style-position:initial;line-height:24px;color:rgb(64,64,64);font-family:"Fira Sans",Helvetica,Arial,sans-serif"><li style="box-sizing:border-box;list-style:disc;margin-left:24px"><p class="gmail-first" style="box-sizing:border-box;line-height:24px;margin:0px 0px 12px">Linux < 4.11</p><p style="box-sizing:border-box;line-height:24px;margin:0px">v6 Route Replacement - Linux kernels before 4.11 can cause issues with v6 route deletion when you have ECMP routes installed into the kernel. This especially becomes apparent if the route is being transformed from one ECMP path to another.</p><p style="box-sizing:border-box;line-height:24px;margin:0px">=======================</p></li></ul></span></div><div><span class="gmail-il">Thanks</span></div><div><span class="gmail-il">Thippanna</span></div></div></div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, May 25, 2018 at 10:46 AM Donald Sharp <<a href="mailto:sharpd@cumulusnetworks.com">sharpd@cumulusnetworks.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">All -<br>
<br>
We recently introduced, into master, a new cli switch for zebra on<br>
linux `--v6-rr-semantics`.  This was allow zebra to take advantage of<br>
the linux kernel getting v6 route replace semantics that is coming<br>
soon in the 4.18 linux kernel.  So if you are on the bleeding edge of<br>
linux kernels and FRR you can start to take advantage of this new<br>
feature.<br>
<br>
What are Route Replace semantics you ask?<br>
<br>
Suppose we have a v6 route with 2 nexthops:<br>
S>* 4:6:7::/64 [1/0] via 1:2:3::4, enp0s3, 00:00:02<br>
                     via 1:2:8::8, enp0s8, 00:00:02<br>
<br>
Now suppose we remove a nexthop:<br>
robot# conf t<br>
robot(config)# no ipv6 route 5:7:9::/78 1:2:8::9<br>
robot(config)# end<br>
robot# show ipv6 route<br>
[snip]<br>
S>* 5:7:9::/78 [1/0] via 1:2:3::4, enp0s3, 00:01:04<br>
<br>
Let's look at the netlink notifications for this event:<br>
[ROUTE]5:7:9::/78 proto static metric 20      <----------- From<br>
creation of the 2x ecmp for 5:7:9::/78<br>
nexthop via 1:2:3::4 dev enp0s3 weight 1<br>
nexthop via 1:2:8::9 dev enp0s8 weight 1<br>
[ROUTE]Deleted 5:7:9::/78 proto static metric 20 <---- We delete the route<br>
nexthop via 1:2:3::4 dev enp0s3 weight 1<br>
nexthop via 1:2:8::9 dev enp0s8 weight 1<br>
[ROUTE]5:7:9::/78 via 1:2:3::4 dev enp0s3 proto static metric 20 pref<br>
medium <----- We add it back in.<br>
<br>
In order to get the routes right in the kernel we had to delete the<br>
route first and then add it back in.  Exposing a small window of<br>
packets being dropped while the route is fixed in the fib.<br>
<br>
Route Replace semantics tells the linux kernel to just replace the<br>
nexthops for the route.  New packets coming in would immediately start<br>
using the new ecmp nexthop group path:<br>
[ROUTE]5:7:9::/78 proto static metric 20<br>
nexthop via 1:2:3::4 dev enp0s3 weight 1<br>
nexthop via 1:2:8::9 dev enp0s8 weight 1<br>
[ROUTE]5:7:9::/78 via 1:2:3::4 dev enp0s3 proto static metric 20 pref medium<br>
<br>
thanks!<br>
<br>
donald<br>
<br>
_______________________________________________<br>
frog mailing list<br>
<a href="mailto:frog@lists.frrouting.org" target="_blank">frog@lists.frrouting.org</a><br>
<a href="https://lists.frrouting.org/listinfo/frog" rel="noreferrer" target="_blank">https://lists.frrouting.org/listinfo/frog</a><br>
</blockquote></div>