01-31-2014 12:05 PM - edited 03-04-2019 10:13 PM
Hello experts
While reading IP header, I understood bit of FRAGMENT OFFSET field.
The thing which is confusing is the statement " The Fragments are specified in units of 8 bytes, which is why Fragment length must be multiple of 8" .
Why Fragments are specified in units of 8 bytes ?
From where do we come upto 8 bytes.
Thanks
Vishal Bhugra
02-02-2014 05:38 AM
Disclaimer
The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk.
Liability Disclaimer
In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.
Posting
From where do we come upto 8 bytes.
Because that's what the standard defines.
The thing which is confusing is the statement " The Fragments are specified in units of 8 bytes, which is why Fragment length must be multiple of 8" .Why Fragments are specified in units of 8 bytes ?
If you're asking why the standard chose increments of 8 bytes, I don't know if that's actually documented, but if not, likely just for two primary reasons. First, no one saw the need to deal with fragments in smaller allocations, i.e. less overhead. Second, it allows you to track size with a smaller binary number.
For the latter, consider IP segments can be (about) 2 ** 16 in size. So, to track this size, we need a 16 bit field. But if want to reduce the size of the size field, say by 3 bits (for the DF flags), we need to scale the counter by 2 ** 3 (or 8).
Something that's often overlooked years or decades later, specifications like these were defined for what was considered practical with current and near term hardware. How fast some technology evolves can come as a surprise. For example, when the IBM PC came out, there was the quote, supposedly made by Bill Gates (which he says he didn't) of "640K ought to be enough for anyone." But even if Bill didn't make such a quote, many couldn't image the need for a larger address space any time soon.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide