14:00:18 #startmeeting neutron_drivers 14:00:18 Meeting started Fri Jun 18 14:00:18 2021 UTC and is due to finish in 60 minutes. The chair is slaweq. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:00:19 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 14:00:19 The meeting name has been set to 'neutron_drivers' 14:00:22 hi 14:00:24 o/ 14:00:25 o/ 14:00:35 hi 14:00:46 o/ 14:00:48 i 14:00:49 Hi 14:01:09 o/ 14:01:16 hi 14:01:21 hi 14:02:25 o/ 14:02:52 I think we can start 14:02:58 #topic RFEs 14:03:07 we have one new RFE for today 14:03:14 https://bugs.launchpad.net/neutron/+bug/1931953 14:03:42 which in fact isn't very new as we had something similar in the past 14:03:50 https://bugs.launchpad.net/neutron/+bug/1705536, https://blueprints.launchpad.net/neutron/+spec/openflow-based-dvr 14:04:05 I added this topic but I shouldn't talk about it 14:04:21 ralonsoh I think You should :) 14:04:44 I filed this REF 14:04:47 yangyi01, will present this feature better than me 14:04:50 right 14:04:59 hi yangyi01, good that You are here :) 14:05:20 ok, let me talk about why we need it. 14:06:05 Actually, I have worke on this tough issue last year in OVS project. 14:06:31 We want to use OVS DPDK in openstack 14:07:03 who's we? 14:07:04 But obviously it is very very bad as far as performance is concerned. 14:07:30 Inpur, China-based cloud provider. 14:07:51 ack 14:08:01 I have fixed many perofermance issues on OVS DPDK side. 14:08:46 including VXLAN TSO, GRO, GSO, UFO, etc. 14:09:43 I also have a batch process patch to improve tap and veth performnce in OVS, it has been merged. 14:10:16 that can improve performance significantly, but it is far not enough. 14:10:59 it is best way not to use tap and veth in OVS DPDK case. 14:11:13 that is why I want to have this REF. 14:12:10 this can improve across-node L3 vm to vm performance and FIP performance dramatically. 14:12:25 the result is really incredible. 14:13:02 this REF also can improve OVS kernel performance and big UDP issue. 14:13:15 in your RFE you mention that it is different to https://blueprints.launchpad.net/neutron/+spec/openflow-based-dvr. How is it different? 14:14:09 now, big UDP or big ICMP can't work in OVS kernel case with security group in linux bridge. 14:14:37 yes, implementation way is different. 14:14:44 how? 14:15:32 I think old spec only considered virtual IP, didn't consider FIP. 14:15:57 it was, in centralized mode 14:16:19 for FIP, only neutron as a SDN controller and handle ARP request can fix it. 14:17:32 IIRC current DVR supports FIP from compute nodes. 14:18:10 yes, for SNAT, it also used FIP, that can be centralized or distributed. 14:18:14 for sure, L3 agents supports this, not the Intel implementation for OF DVR 14:18:48 but let's focus on the new implementation 14:19:09 Intel just impelmented l3 agent by using openflow. 14:19:24 I was Intel guy before. 14:19:48 do You think that Your solution may replace current DVR implementation, or we should keep both in-tree? 14:20:26 if you chech that submited implementation patch, I don't think it can work, it din't install flow per FIP or qrouter. 14:21:06 meaning it cannot replace the current DVR implementation? 14:21:52 Lajos Katona proposed openstack/networking-bgpvpn stable/train: stable only: Fix failing jobs and make l-c non-voting https://review.opendev.org/c/openstack/networking-bgpvpn/+/796808 14:22:00 We added a config option dvr_use_openflow, if set to True, l3 agent will install openflow to br-int, if false, old way can still work. 14:22:23 my REF depends on current DVR impelmetation. 14:22:57 do you mean the neutron tree maintains two different OVS based DVR implementations? 14:23:04 thanks for the clarification 14:23:54 I'd say not only DVR but all L3 agent, right? 14:24:04 so in Your implementation L3 agent will change flows in the br-int directly, right? 14:24:31 I think it is ok. With old implementation there, users can use old namespaces to do anything as before. 14:25:03 yes 14:25:10 my main concern is maintenance of that code, we will need to add new CI job to have it tested, etc. 14:25:12 :/ 14:25:54 it is worthy for super high performance. 14:26:24 an option is to have it in a separate networking-ovs-dvr repo, right? 14:26:36 that's a good option 14:26:51 FIP can reach line speed, I don't think current implementation can attain this. 14:27:03 I have the same concern as slaweq. This is not like the distributed DHCP feature in OVS, that removes the need of any DHCP agent. 14:27:08 or why don't we go in the opposite direction... could this proposal be used as a springboard to have a brand new DVR implementaion in tree? 14:27:09 or include it in networking-ovs-dpdk repo maybe? 14:27:26 here you are duplicating paths: with iptables or OF, but keeping the L3 agent 14:27:44 (and the L3 agent code is not easy to maintain) 14:28:17 networking-ovs-dpdk is dead 14:28:17 that's why I say, take this as an opportunity for a new reset 14:28:26 this isn't ML2 driver, main neutron tree is best place for this. 14:29:43 yangyi01: what would it take to expand your effort to completely replace our current DVR implementation? 14:31:14 Not sure, if it has been stable enough, we can remove old unnecesary DVR code. 14:31:20 our concern is mainly for the maintenance cost of having competing DVR implementations. It includes the number of CI jobs, review bandwitdh and deeper knowledge of specific impls. 14:31:35 * mlavalle understands slaweq and ralonsoh concerns about CI and all that. But meaybe this is an opportunity to offer our OVS deployments a more performant DVR implementation. THos OVS deployments will be around for a loong time 14:31:54 mlavalle, we should support linux bridge 14:32:07 that won't work with an OF based L3 agent 14:32:17 ralonsoh DVR don't works with linux bridge currently 14:32:21 so that's not an issue IMO 14:32:24 right 14:32:25 sorry 14:33:46 all I'm saying is that we have and will have for a long time OVS users and we should strive to improve their performance experience when the oppotunity arises. Maybe this is one of these opportunities if we expand the effort 14:33:47 TBH personally I'm a bit torn here - from one side I have this maintenance concern, but from the other hand I like idea of more performant DVR implementation, especially that old RFE for that was actually approved already long time ago :) 14:33:49 I'm ok with this if that means replace any other implementation. I prefer not to have two paths in the code 14:34:28 yeah, I agree with not having two paths in the code 14:35:41 Finally, we can have one path if new path is good enough, I'm not sure if it covers some corner cases. 14:36:17 you have my +1 if that RFE includes the replacement of all iptables/conntrack code and provides the same functionality 14:36:39 and a good spec to know how are you going to implement it 14:36:39 so going back to yangyi01, could we re-scope your RFE / spec in such a way that the effort's goal is to replace our DVR implementation in OF? 14:36:54 I agree with ralonsoh - if that can finally be replacement for old implementation of DVR, than I'm ok with it 14:37:07 but IMO we will need much more detailed spec first 14:37:26 ralonsoh: what do you mean by "the replacement of all iptables/conntrack code"? is it the one related to the current DVR? 14:37:43 or l3-agent itself? 14:37:44 amotoki, yes, just this code 14:37:49 No problem, please point out what parts it ddin't cover, I can add them. 14:37:53 no no, not all L3 agent, only DVR stuff 14:37:55 ralonsoh: DVR, right? 14:38:00 yes 14:38:04 ralonsoh: thanks 14:38:04 +1 14:38:29 what is L3 agent without DVR? 14:38:31 I have iplemented it, maybe patch is best spec. 14:38:48 sorry no 14:38:51 in a DVR env DVR and L3 agent seem the same 14:38:54 I could help, but no 14:38:56 I can submit my patch if you want to know details. 14:39:46 l2 agent also handled many DVR-related stuff, DVR is very complicated. 14:39:48 yangyi01 only implementation will for sure not be enough, even if not detailed spec, we would need some docs patch at least with detailed description of tables/flows/etc. 14:40:18 yeah, because we have to live with the maintenace issue 14:40:38 so I'd say, let's start with a good spec of what is going to be done 14:40:54 understood, developers prefer code to docuemnt. 14:41:31 yangyi01: we are being supportive of you, don't dismiss us as non-developers 14:41:45 not very nice of you 14:43:13 so let's vote - I'm +1 to approve this rfe, but it's final goal should be to replace current dvr implementation, and we will need detailed spec and docs with description of how it works 14:43:22 mlavalle, sorry, I can add parts you expect, please add your comments in current spec. not sure what parts are missed. 14:43:57 +1 with those conditions 14:44:11 +1 with aformentioned conditions 14:44:22 +1 by myself :-) 14:45:41 amotoki any thoughts? 14:45:47 +1. I agree the final goal should cover replacing with the current dvr impl. I think we need to cover the rough plan in the spec. 14:46:29 thx, I will mark rfe as approved with those mentioned conditions 14:46:48 and we can then review spec and then implementation as well 14:46:49 include those conditions in your approval comment 14:46:58 mlavalle sure, I will 14:47:12 thx yangyi01 for the proposal 14:47:18 ok, that was the only rfe for today 14:47:24 Anything you need answered to triage https://bugs.launchpad.net/neutron/+bug/1932154 for next weeks meeting? 14:47:31 do You have any other topics You would like to talk about? 14:47:46 yangyi01: one question: you said "add your comments in current spec". did you already propose some spec? 14:48:00 One question, how long can a approved spec take to finish? This is a big engineering effort. 14:48:24 yes, I have submited spec. 14:48:32 amotoki https://review.opendev.org/c/openstack/neutron-specs/+/796746 14:48:38 this is the spec 14:48:40 thanks. I just found it :) 14:49:10 could we discuss RFE from previous meeting https://bugs.launchpad.net/neutron/+bug/1931100? 14:49:26 https://blueprints.launchpad.net/neutron/+spec/openflow-based-dvr-l3 14:49:37 fnordahl I asked ralonsoh to check Your rfe, I think he didn't check it yet 14:49:52 slaweq, I couldn't yet 14:50:04 ralonsoh np at all :) 14:50:11 slaweq, ralonsoh ok, nw, ta for answer, we'll wait in line :) 14:50:26 ok, lets quickly back to velizarx's RFE https://bugs.launchpad.net/neutron/+bug/1931100 14:51:00 amotoki I see that velizarx just replied to Your comment yesterday 14:51:11 I saw it. 14:51:49 This last RFE makes sense at first glance 14:52:00 it clarifies what should be shared and I think we can allow network/router association only to end-users with access_as_shared. 14:52:21 I am now fine with this RFE. 14:52:45 thx amotoki, are there any other questions regarding that RFE? 14:52:54 or can we vote on it now? 14:53:06 mhhh, I said at first glance 14:53:11 slaweq: no more questions from me 14:53:21 I'm +1 on that RFE too 14:53:27 if you want my vote, can we vote at the beginning of next meeting? 14:54:07 mlavalle we can, of course but next week I will not be able to chair the meeting so I though about cancelling it 14:54:17 in that case we will have next meeting in 2 weeks 14:54:30 if You want, we can wait with this RFE 14:54:39 of course y'all can go ahead and approve without me. I just don't want to give a +1 without some thinking 14:55:09 Could you give some details about glance? Where is a problem? 14:55:20 I'm a bit out of context 14:55:41 glance means at first sight 14:55:58 ah :) 14:56:00 I'm not talking glance the OpenStack project 14:56:54 slaweq: please feel free to approve this RFE without me. "At first glance" I don't have any concerns 14:56:59 :-) 14:57:06 I think it sounds reasonable but as amotoki said, the spec should define the operations to be allowed 14:57:11 so +1 from me too 14:57:27 I have only one question about implementation (if this RFE will be approved ofc) for this RFE. For this RFE I should add BGPV's objects to the main neutron repository (to neutron/objects) but all other code will be in networking-bgpvpn repository. Is it problem? 14:57:42 thx mlavalle and ralonsoh 14:57:53 I will mark rfe as approved 14:57:56 no, those objects will live in your repo 14:58:02 we can talk about this later 14:58:21 ok, will retrun with this question ;) thx 14:58:32 thank You all for attending the meeting 14:58:35 I think we can skip the spec for this RFE. 14:58:45 we are almost on top of the hour now 14:58:57 amotoki, ok then, I'll wait for the patch 14:58:58 amotoki I agree with You 14:59:08 the scope clarifies in the RFE. the API ref and the patch can cover it. 14:59:18 perfect 14:59:31 s/clarifies/is clarified/ 14:59:50 have a great weekend and see You online :) 14:59:53 #endmeeting