[Cerowrt-devel] Layering [was: perverse powersave bug with sta/ap mode]
jch at pps.univ-paris-diderot.fr
Thu Apr 28 13:28:23 EDT 2016
> As wifi has evolved all sorts of packets below the conventional link
> layer that are invisible to IP (management frames in general), perhaps
> finding saner ways of exposing these packet types and their properties
> to the conventional IP stack - and the IP stack to the properties of
> the wifi frames - would be of help.
I think it might be useful to think why TCP/IP has eaten all the other
protocol suites for lunch.
TCP/IP is a horribly inefficient protocol suite. Any on of us could
design something simpler, more elegant, and more efficient. TCP/IP
wastes precious bits in multiple headers, and wastes opportunities for
optimisation by avoiding to a great extent cross-layer optimisations.
So why did TCP/IP succeed? Because it is layered. The price you pay for
layering is the inefficiency, but it is well worth it -- because it is
lower-layer agnostic, TCP/IP was able to adapt to new physical layers
faster than all the other protocols. If you're not convinced, please try
running DECNET natively over ATM (encapsulating Ethernet frames within
AAL3/4 PVCs doesn't count).
I don't think it's productive to get the network layer know to much about
the details of the physical layer -- all your work will need to be redone
in five years, when the next iteration of .11 breaks your assumptions.
The link layer is where the phy-related smarts belong.
(Now babeld has some knowledge of lower-layer characteristics, and this
causes no end of trouble. But it's not too bad, since it's just the
implementation -- no lower-layer assumptions reside in the protocol beyond
those made by IP.)
More information about the Cerowrt-devel