title: Rationale for size being a member of UDP header
body: <p>What is the rationale for UDP header to contain size of the datagram in it? Wouldn't size of containing IP datagram (after reassembly) determine the size of UDP packet within it? </p>
  
  <p>One thing which comes to mind is that it was done in order to support other protocols than IP as UDP transport, but this doesn't stand scrutiny for two reasons: </p>
  
  <ol>
  <li>It's hard to imagine a lower-level protocol where size of it's message can only be determined by upper-level protocol field;</li>
  <li>And more importantly, UDP is already tightly coupled with IP. It would not run on any other protocols without variations anyways (and as many people notice, should be actually referred to as UDP/IP).</li>
  </ol>
  
  <p>What am I missing here?</p>