That “thing i quoted” *was* the ethernet spec - THE NORMAL STANDARD - the latest version 802.3-2018 going for about $1000 USD. And like I said, there is no such thing as a "Jumbo" frame, it's not IEEE standard, the spec shows that also. therefore saying "it's already a jumbo frame" is meaningless. The Ethernet Layer-2 standard defines a 14-byte ethernet header and 1500 byte payload size, with a 4 byte CRC that is 1518 bytes. When you say "it's part of the data" you have to be clear about what layer you are talking about.
No. The TAG comes after the DA/SA, the length after the tag. Here is a picture https://en.wikipedia.org/wiki/EtherType See section VLAN tagging. What happens in hardware is the fixed DA/SA (12 bytes) is extracted, a 0x8100 type / len re-inserted and CRC recomputed. The firmware for the Broadcom StrataSwitch 56xx ethernet switches handles L2 Ethernet I/II, tagged/untagged with/without snap headers, as well as L3 hardware routing including rewriting up to 52 bytes of the IP header field, all while respecting TOS and QoS — we didn’t drop packets over 1500 bytes at L2 - and that was 20 years ago. This is where the defines in net/if_ether.h in any modern linux kernel come from - note the distinction between ETH_FRAME_LEN (1514) and ETH_DATA_LEN (1500) the former which handles the Ethernet header. To make it even more complicated, there are additional header values which are typically inserted on a GigE/VLAN based controller and that is all "pulled up" (removed) by the time the IP layer gets the packet (by your Ethernet MAC or driver). Regardless, the recommendation for any Ethernet L2 use case today is a 1518 to 2K frame size. I understand on these microcontrollers that may seem excessive, but newer chips will have even more ram and performance and you have to decide whether you want interop or a dedicated point to point use-case. If you want to nitpick on something, it should be the standard, the latest envelope extensions are going to make networking even more difficult in the future :( > On Mar 5, 2021, at 2:45 AM, Johnny Billquist <b...@softjar.se> wrote: > >> On 2021-03-05 05:35, James Dougherty wrote: >> Technically, the MTU should be 1496 of you use VLANs, or else it's >>> actually already a jumbo frame. The total size according to the ethernet >>> spec is really 1518. Larger are not allowed. VLAN information is >>> actually a part of the payload. >>> >>> >> Yes, 1518 is the size, true. But VLANS are not part of the payload. An >> untagged frame which enters a VLAN >> switch will have the 802.1Q tag inserted after the DA/SA. When that happens >> the CRC has to be recomputed >> so therefore *it is not* just part of the payload (e.g. like a UDP >> datagram). Larger are allowed, we typically use 2K >> sizes for additional link layer encapsulation (most of the switching >> hardware today does at least). > > The CRC covers the whole packet, so of course the CRC have to be recomputed > if you add a VLAN tag. > > The VLAN tags are not added after the DA/SA, but actually after the length > field. > When you add VLANs, you normally no longer use ethernet, but instead 802.3. > In which this is not considered a part of the payload, I know. But the > controller receiving the packet might have no clue about this. It's all at a > higher level of protocol handling. It's nice that 802.3 have defined so that > larger frames are allowed. Older ethernet controllers will still drop such > packets because they are over 1500 bytes of payload. Even if they understand > 802.3. And even if software would understand VLANs. > Not that the thing you quoted states "MAC Client Data Field". And that is > 1500 (the normal standard), 1504 with Q-tag, and so on. That's the MAC Client > *Data* field. It's part of the data. > > But I suspect you know this. :-) > > I feel I should stop now anyway. Feel free to mail me in private though. But > I don't want to pollute the mailbox of everyone with my nitpickings. > > Johnny > > -- > Johnny Billquist || "I'm on a bus > || on a psychedelic trip > email: b...@softjar.se || Reading murder books > pdp is alive! || tryin' to stay hip" - B. Idol