netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Joseph Gasparakis <joseph.gasparakis@intel.com>
To: Or Gerlitz <or.gerlitz@gmail.com>
Cc: Joseph Gasparakis <joseph.gasparakis@intel.com>,
	Or Gerlitz <ogerlitz@mellanox.com>,
	John Fastabend <john.r.fastabend@intel.com>,
	Yan Burman <yanb@mellanox.com>, netdev <netdev@vger.kernel.org>,
	Stephen Hemminger <stephen@networkplumber.org>
Subject: Re: extending ndo_add_rx_vxlan_port
Date: Sun, 27 Oct 2013 16:44:39 -0700 (PDT)	[thread overview]
Message-ID: <alpine.LFD.2.03.1310271635540.15400@intel.com> (raw)
In-Reply-To: <CAJZOPZ+S6ngqMjV-2ZMcpzkuWzzLWwCQMtd_1_SjDkqWh_tbYg@mail.gmail.com>



On Sun, 27 Oct 2013, Or Gerlitz wrote:

> On Sun, Oct 27, 2013 at 7:25 PM, Joseph Gasparakis
> <joseph.gasparakis@intel.com> wrote:
> >
> >
> > On Sun, 27 Oct 2013, Or Gerlitz wrote:
> >
> >> Hi,
> >>
> >> So with commit 53cf527513eed6e7170e9dceacd198f9267171b0 "vxlan: Notify drivers
> >> for listening UDP port changes" drivers that have HW offloads for vxlan can be
> >> notified on which UDP port to listen. Taking this further, some HW may need to
> >> know the multicast address and/or the VNID used by the vxlan instance/s set
> >> above them. In that respect, do we prefer to extend ndo_add_rx_vxlan_port() or
> >> introduce new ndo?
> >>
> >> Or.
> >>
> >
> > The way this patch works is to notify the drivers when a VXLAN UDP port
> > comes up or down. This way drivers do not need to do any sort of accounting. As
> 
> Could you elaborate why do we want to notify all the netdev instances
> in the system (on a certain name-space)
> that vxlan instance/s are set to listen on certain UDP port and not
> only the device over which the
> vxlan device is being set? say the HW can listen limited amount of UDP
> ports and few vxlan instances are created
> one of top of each "real" netdev in the system and each on different
> port. Each netdevice will get all callbacks on port addition
> and at some point will start to fail adding them into the HW  when the
> HW limit is met.
> 
> Or.
> 
VXLAN implementation is not done like VLAN. VLANs are stacked on top of 
real interfaces and what you are saying makes sense. VXLAN however is 
using ip[6]_tunnel_xmit, and this is why we need to notify all the 
netdevs in the system that implement the add/del vxlan port ndo (i.e. are 
capable of offloading inner csums). In effect all physical "real" netdevs 
are candidates to receive/transmit VXLAN traffic, subject to routing 
tables changing or not.

Joseph

  parent reply	other threads:[~2013-10-27 23:28 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-27 15:21 extending ndo_add_rx_vxlan_port Or Gerlitz
2013-10-27 17:25 ` Joseph Gasparakis
2013-10-27 20:34   ` Or Gerlitz
2013-10-27 23:41     ` John Fastabend
2013-10-27 23:44     ` Joseph Gasparakis [this message]
2013-10-28  7:35       ` Or Gerlitz
2013-10-28 17:59         ` Joseph Gasparakis
2013-10-28 18:19           ` Or Gerlitz
2013-10-28 20:24             ` Joseph Gasparakis
2013-10-28 21:13               ` Joseph Gasparakis

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=alpine.LFD.2.03.1310271635540.15400@intel.com \
    --to=joseph.gasparakis@intel.com \
    --cc=john.r.fastabend@intel.com \
    --cc=netdev@vger.kernel.org \
    --cc=ogerlitz@mellanox.com \
    --cc=or.gerlitz@gmail.com \
    --cc=stephen@networkplumber.org \
    --cc=yanb@mellanox.com \
    /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).