Hi Joel,
thank you for the clarification of your concern. For the inner
Ethernet header, the destination and source MAC addresses are as
described in Section 5 of RFC 7348 for VXLAN's outer Ethernet header:
The outer destination MAC address in this frame may
be the address of the target VTEP or of an intermediate Layer 3
router.
As I understand this example, a VTEP must have MAC address assigned.
The address used as the source MAC address of the outer Ethernet frame
and may be used by a remote VTEP as destination MAC address in the
outer Ethernet frame. This MAC address is not, as I understand,
associated with any VNI. Perhaps we can add text to point to Section 5
RFC 7348 and how VTEP MAC address is used in the outer Ethernet header
of a VXLAN packet. If you agree, I'll polish the new update in a day.
Regards,
Greg
On Wed, Jun 5, 2019 at 8:20 PM Joel M. Halpern <jmh@xxxxxxxxxxxxxxx
<mailto:jmh@xxxxxxxxxxxxxxx>> wrote:
I am having trouble parsing your response. Apologies.
The first part talks about a VTEP receiving a packet, and
determining if
there is a receiver VM for the inner MAC. That is a quote from 7348
Section 4.1. I understand it.
You then go on to quote from section 5 of the BFD over VxLAN
specification saying that it modifies this to specify that the VTEP
checks for its own MAC address.
The only problem is that the VTEP is not part of the tenant network.
Any MAC address you want it to use may be in use by the tenant
network.
As far as I know, in normal VxLAN oepration, VTEPs do NOT have their
own
MAC addresses within the scope of the VNI.
Now, if you say that BFD will only be used with VNI 0 (i.e. a VNI
that
is not assigned to a tenant), then the conflict goes away. But
again,
there is no need for special MAC checking. Just declare that the
VTEP
looks for OAM content on VNI 0.
So no, your proposed change does not address my concern, as
"VTEP's MAC
address is not, to the best of my knowledge, a well-defined term.
I am
happy to be shown where such a thing is defined for use within
tenant VNIs.
Yours,
Joel
On 6/5/19 9:55 PM, Greg Mirsky wrote:
> Hi Joel,
> I cannot find the text in RFC 7348 that suggests that any
> VXLAN-encapsulated frame received by VTEP must be forwarded to
a VM
> associated with the specified VNI. But I've found the text in
section
> 4.1 that makes the forwarding of the inner frame to VM
conditional to
> the destination MAC address matching to VM's MAC:
> Upon reception, the remote VTEP
> verifies the validity of the VNI and whether or not there is
a VM on
> that VNI using a MAC address that matches the inner
destination MAC
> address. If so, the packet is stripped of its encapsulating
headers
> and passed on to the destination VM.
> BFD over VXLAN specification in section 5 clarifies the
processing of
> the received VXLAN packet by the remote VXLAN:
> Once a packet is received, VTEP MUST validate the packet.
If the
> Destination MAC of the inner MAC frame matches the MAC
address of the
> VTEP the packet MUST be processed further.
>
> The UDP destination port and the TTL of the inner IP packet
MUST be
> validated to determine if the received packet can be
processed by
> BFD. BFD packet with inner MAC set to VTEP's MAC address
MUST NOT be
> forwarded to VMs.
> Would this text address your concern?
>
> Regards,
> Greg
>
> On Wed, Jun 5, 2019 at 2:47 PM Joel M. Halpern
<jmh@xxxxxxxxxxxxxxx <mailto:jmh@xxxxxxxxxxxxxxx>
> <mailto:jmh@xxxxxxxxxxxxxxx <mailto:jmh@xxxxxxxxxxxxxxx>>> wrote:
>
> The inner packet of a VxLAN header with a VNI is a tenant
packet for
> the
> tenant identified by the VNI. That is the meaning of the
inner packet.
>
> If you declare that the flag bits change that meaning, then
that flag
> bit has to adjust the packet processing at the VTEP such taht
it will
> intercept the packet. As such, it doesn;t need special inner
source or
> dest mac addresses or IP addresses. In fact, the inner
packet can just
> be OAM payload.
>
> If that is not what you intend, then how is it that the VTEP
knows that
> the inner addresses are for it to examine, rather than
belonging to the
> tenant. As far as I know we are not free to take addresses
away from
> the tenant.
>
> It may be that I am completely missing how this is supposed to
> work. If
> so, it needs better explanation.
>
> Yours,
> Joel
>
> On 6/5/19 5:20 PM, Greg Mirsky wrote:
> > Hi Joel,
> > thank you for your review and the pointed questions.
Please find my
> > answers, comments in-line and tagged GIM>>.
> >
> > Regards,
> > Greg
> >
> >
> > On Thu, May 23, 2019 at 3:06 PM Joel Halpern via
Datatracker
> > <noreply@xxxxxxxx <mailto:noreply@xxxxxxxx>
<mailto:noreply@xxxxxxxx <mailto:noreply@xxxxxxxx>>
> <mailto:noreply@xxxxxxxx <mailto:noreply@xxxxxxxx>
<mailto:noreply@xxxxxxxx <mailto:noreply@xxxxxxxx>>>> wrote:
> >
> > Reviewer: Joel Halpern
> > Review result: Has Issues
> >
> > Hello,
> >
> > I have been selected as the Routing Directorate
reviewer for this
> > draft. The
> > Routing Directorate seeks to review all routing or
> routing-related
> > drafts as
> > they pass through IETF last call and IESG review, and
> sometimes on
> > special
> > request. The purpose of the review is to provide
assistance
> to the
> > Routing ADs.
> > For more information about the Routing Directorate,
please see
> > http://trac.tools.ietf.org/area/rtg/trac/wiki/RtgDir
> >
> > Although these comments are primarily for the use of
the Routing
> > ADs, it would
> > be helpful if you could consider them along with any
other
> IETF Last
> > Call
> > comments that you receive, and strive to resolve them
through
> > discussion or by
> > updating the draft.
> >
> > Document: ddraft-ietf-bfd-vxlan-07
> > Reviewer: your-name
> > Review Date: date
> > IETF LC End Date: date-if-known
> > Intended Status: copy-from-I-D
> >
> > Summary: This document does not appear to be ready for
> publication as a
> > Proposed Standard RFC.
> >
> > Major issues:
> > The scoping of the BFD usage is unclear. In
places,
> this looks
> > like it is
> > intended to be used by the underlay service
provider,
> who will
> > monitor the
> > connectivity between VTEPs.
> >
> > GIM>> I think that the DCI provider would not be able to
> instantiate a
> > BFD session using VXLAN encapsulation and, possibly,
monitor that
> VXLAN
> > part of forwarding operates properly. Such BFD session may
> monitor the
> > path between the two VTEP but, if there exists ECMP
environment
> in the
> > transport, ensuring that that BFD session follows the same
path
> as VXLAN
> > data may be challenging.
> >
> > In other places it seems to be aimed at
> > monitoring individual VNIs.
> >
> > GIM>> The BFD session between VTEPs is not actually used to
> monitor the
> > particular VNI but MAY be used to communicate, as
concatenated path
> > state signaling, the change of VNI state using the method
> described in
> > Section 6.8.17 RFC 5880
> > <https://tools.ietf.org/html/rfc5880#section-6.8.17>.
> >
> > This is made worse when the packet format is
> > laid out. The inner packet is an Ethernet Packet
with an IP
> > packet (with
> > UDP, with BFD). This means that it is a tenant
packet.
> >
> > GIM>> Could you please point to the text which suggests
that the BFD
> > control packet is a tenant packet? Meant to be delivered
to a tenant?
> >
> > The IP address is
> > a tenant IP.
> >
> > GIM>> The explanation of the format states in regard to
the inner
> IP header:
> > IP header:
> >
> > Source IP: IP address of the originating VTEP.
> >
> > Destination IP: IP address of the terminating
VTEP.
> >
> > But the diagram shows this as being the IP address
of the
> > VTEP. Which is not a tenant entity.
> >
> > There is further confusion as to whether the
processing is
> > driven by the VNI
> > the packet arrived with, or the VNI is ignored.
> >
> > GIM>> The use of VNI is implementation specific. Section 6
states:
> > 6. Use of the Specific VNI
> >
> > In most cases, a single BFD session is sufficient
for the
> given VTEP
> > to monitor the reachability of a remote VTEP,
regardless of the
> > number of VNIs in common. When the single BFD session
is used to
> > monitor the reachability of the remote VTEP, an
> implementation SHOULD
> > choose any of the VNIs but MAY choose VNI = 0.
> >
> >
> > Minor Issues:
> > N/A
> >
> > Nits: N/A
> >
>