In many layered protocols, each layer has its own header. Surely it
would be more efficient to have a single header at the front of each
message with all the control in it than all these separate headers.
Why is this not done?