Subject: [manet] Clarification on DLEP RFC 8175

From: Eugene Reznik <[email-masked]>
Date: Mon, 7 Jan 2019 19:52:24 +0200

Hello,

I have a question about the DLEP RFC and specifically about the discovery
process.
In paragraph 12.3 Peer Discovery signal RFC says:
" A Peer Discovery Signal MUST be encoded within a UDP packet. The
destination MUST be set to the DLEP well-known address and port number. "

In paragraph 12.4 Peer Offer Signal RFC says:
" A Peer Offer Signal MUST be encoded within a UDP packet. The IP source
and destination fields in the packet MUST be set by swapping the values
received in the Peer Discovery Signal. "

In paragraph 15.15 RFC says:
"DLEP IPv4 Link-Local Multicast Address IANA has assigned the IPv4
multicast address 224.0.0.117 in the registry found at ..."

As far as I understand, these rules essentially lead to the following
situation: the modem MUST form a UDP packet where the source IP address is
multicast 224.0.0.117.
Can you please clarify if this is the intention of RFC or did I
misunderstand it?

Regards,
Evgeniy Reznik.

---

From: Rick Taylor <[email-masked]>
Date: Tue, 8 Jan 2019 11:01:01 +0000

Hi Eugene,

Comments inline...

On Mon, 2019-01-07 at 19:52 +0200, Eugene Reznik wrote:
> Hello,
> 
> I have a question about the DLEP RFC and specifically about the
> discovery process.
> " A Peer Offer Signal MUST be encoded within a UDP packet. The IP
> source and destination fields in the packet MUST be set by swapping
> the values received in the Peer Discovery Signal. "
> 
> In paragraph 15..15 RFC says:
> situation: the modem MUST form a UDP packet where the source IP
> address is multicast 224.0.0.117.

Yes I agree, the text is confusing and possibly wrong.  The situation
is made worse by the text at the end of paragraph 4 in section 7.1 "If
no Connection Point Data Items are included in the Peer Offer Signal,
the router MUST use the source address of the UDP packet containing the
Peer Offer Signal as the IP address, and the DLEP well-known port
number."

The intention of the authors (and what all my implementations do) is:

M> The modem binds a UDP socket to the DLEP well-known multicast
addresses/ports, and starts a recvfrom().

R> The router sends a Peer Discovery signal to the DLEP multicast
address, setting the UDP packet destination address to the multicast
address/port and the packet source address to an address on the DLEP
interface, using an unused (ephemeral) local port [Section 12.3].  It
then starts a recv() on the local address/ephemeral port.

M> The modem receives the Discovery signal from the router, and replies
with whatever information it wants by *unicasting* the Peer Offer
signal back to the router, using incoming packet's source address/port
as the destination, and setting the source address/port of the UDP
packet to one of the following:

 * If the Peer Offer signal includes one or more Connection Point Data
Items, then the source address/port is irrelevant.

 * If the Peer Offer signal does not include a Connection Point Data
Item then the source address MUST be the IP address with which the
modem is willing to accept TCP connections, but the port is irrelevant.

R> When the router receives the Peer Offer response, it follows the
rules defined by paragraph 4 of section 7.1.

In summary, I believe paragraph 2 of section 12.4 is incorrect.  Can
you raise an errata please (https://www.rfc-editor.org/errata.php), and
we can address it formally?

Thanks for pointing out the issue, and I hope this helps.

Cheers,

Rick