Date: Fri, 2 Jan 2015 17:53:34 +0100 From: Luigi Rizzo <rizzo@iet.unipi.it> To: "Alexander V. Chernikov" <melifaro@yandex-team.ru> Cc: "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>, Navdeep Parhar <np@freebsd.org> Subject: Re: cxgbe and netmap Message-ID: <20150102165334.GB68836@onelab2.iet.unipi.it> In-Reply-To: <54A6BFFE.5080103@yandex-team.ru> References: <54A6BFFE.5080103@yandex-team.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jan 02, 2015 at 06:57:50PM +0300, Alexander V. Chernikov wrote: > Hello list! > > FreeBSD has netmap support for chelsio T5 cards, which is amazing. > The great thing about implementation is that you can play with > traffic-generating applications without affecting "main" OS interface, > which has always been a problem for Intel cards. > However, this approach (having additional netmap-only ifp) turns to be a > bit problematic for netmap-based networking elements participating in > routing. > > In Intel case you can configure all your interfaces, run routing daemon, > run netmap application and punt all to-host traffic to kernel via host > pipes. for clarity, please call this "host netmap PORT", not pipe, as the latter can be confused with dummynet pipes. > It looks like I can't do this using current implementation: mac > addresses are different for main/netmap interfaces so I can't run > routing daemon on main interface (or sub-interfaces). > I also can't run routing daemon on top of ncxgbe* interface since it > appears to ignore non-netmap-derived traffic.. Maybe navdeep did not implement the host side for ncxgbe ? This should be a relatively trivial thing to do. Otherwise, for the time being, you could try the following hack: - create a tap interface, say tap*, and give it the same MAC as ncxgbe*. You will use only the host port for tap* - open both tap* and ncxgbe* in netmap mode, make sure to set the same flags, mode (promisc etc.), mtu on both; - run the routing daemon on top of tap* - use the tap*'s host netmap port to send up traffic coming from ncxgbe* directed to the host (and vice versa, inject netmap packets coming from tap*'s host netmap port into ncxgbe*'s netmap rings. cheers luigi > Is it possible to make ncxgbe* interfaces behave more like ordinary ones? > > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150102165334.GB68836>