[RFC] ng_netif_hdr: add flags for multicast and broadcast#2600
[RFC] ng_netif_hdr: add flags for multicast and broadcast#2600miri64 merged 3 commits intoRIOT-OS:masterfrom
Conversation
There was a problem hiding this comment.
I could not find anything on EUI-64 translation, so I assumed it to be the same as the EUI-48 scheme with the ff:fe insertion.
|
Any opinions on this? If not lets merge it ASAP! |
nowhere really, it is based on a combination of https://standards.ieee.org/develop/regauth/tut/eui48.pdf and http://tools.ietf.org/html/rfc2464. That's where my own headaches with this PR start (though I'm also not sure if we can generalize for |
|
@authmillenon It depends very much on phy + mac. I think " |
Yes and no: This is why I added the following to this PRs description:
This is also why I thought the translation for 8-byte addresses might be a good idea too.
Then we wouldn't be able to send broadcast with IEEE 802.15.4 long addresses. I would rather set all bytes |
ok, make sense |
|
I am not a 100% convinced of the PR, (yet?). I don't like the idea on making assumptions on the underlying link layer based on the l2 address length. What happens, if I use a proprietary linke layer with 2 byte addresses that uses As I see it, there should be one fixed broadcast address registered for each interface. Then once an interface driver wants to send a package and detect it's broadcast address, it can either just use it (e.g. 802.15.4 -> I think this would be the more versatile approach. |
|
But e.g. Ethernet supports both multicast and broadcast (the later we need if we ever implement IPv4)… The Ethernet address you propose is not an Ethernet address purposeful for IPv6 multicast => they are defined as |
|
I've got an idea: instead of assuming and stating how a general link-layer broadcast/multicast-address for link-layers should look like, we just let the link-layer decide this stuff completely: |
|
I think this is a good idea |
c790ee9 to
ac5dd70
Compare
|
Hijacked the PR for this ;-) |
ac5dd70 to
760fb21
Compare
|
Rebased to current master |
9f184dd to
45554bf
Compare
760fb21 to
fa2ab8b
Compare
|
Rebased to current master |
|
Though we might discuss this a little more, can we merge it nevertheless soonish? |
|
ACK |
[RFC] ng_netif_hdr: add flags for multicast and broadcast
|
dammit, too late. The changes to the xbee driver are not completely fine... Broadcast needs another option and the position of the |
|
@haukepetersen did you do that? |
A first idea in the direction of IPv6 multicast address resolution.The problem I faced with the current IPv6 implementation is that Ethernet defines it's multicast addresses for IPv6 as follows:33:33:xx:xx:xx:xx, where thexxs represent the last 4 byte of the IPv6 address (source: http://tools.ietf.org/html/rfc7042#section-2.3.1). This is an attempt to unify this with our current scheme of just assuming that the broadcast address will beff:ff:….Devices that don't support multicast (but have either EUI-48 or EUI-64 addressing) are requested to check the individual/group-bit (the 8th MSB in the address for either case), and transform it into there individual broadcast address if it is set to group.As I've said: this is only a first idea and a starting point for discussion. I'm not that happy with this solution either.[edit] I changed this PR completely in the wake of #2600 (comment):
I also adapted the already existing implementations for it.
People interested into discussing this might be @BytesGalore, @cgundogan, @emmanuelsearch, @haukepetersen, @Lotterleben, @PeterKietzmann, @phiros, and @OlegHahm.