47 views I am facing serious troubles while calculating number of fragments. I read a formula #fragments = ceil (payload/ mtu-header)  but this isn’t giving correct answer in all the cases.

Before I show my approach, I would like to ask what does PDU imply? Does it mean header is already added? Because in questions like “TL PDU is X bytes”, I assume that according to NL, X is payload, to which it adds IP header. So NL PDU is X bytes or (X+ ip header) bytes?

For question 26:

Assuming NL PDU means it includes header(20B) , then useful data (payload) = 17056 bytes which is to be fragmented. MTU is 200B out of which 20B is for header. so it can carry 180 of useful data. So for the formula I read till now(calling it formula 1), #frags= ceil (17056/180)=95

But the fragments can’t carry 180B of data, it has to be multiple of 8. So it carries 176B. (calling this formula 2). So #frags=ceil(17056/176)=97

Now assuming NL PDU means only useful data, ie. payload is 17076B which is to be fragmented. Using the formula 1 #frags= ceil(17076/180)=95

Using formula 2, #frags= ceil(17076/176)=98

No match either. Where am I going wrong?

| 47 views
0
I also did same mistake. My suggestion is use that formula to get number of fragment. After that just check how many bytes are present in last fragment. If those can be accommodated previous fragment then reduce 1 fragment.

You are wrong to think that these test series give right solutions.

PDU is a generic name for what we call packets at different Layer. For example PDU for Network Layer is a "Datagram".

So here PDU for NL is given as = 17076 (TL segment + NL header). Therefore payload here is simply 17076-20 = 17056.

Now we divide 17056 B into chunks of 176 B. And we simply need 97 of these chunks (Fragmented datagrams) of which last one may not be full.

So option C is right answer.

by (39 points)
selected
0

97 should be the ans as . . 176*95=16720
+180  96th datagram
16900  not equal to 17056. so 97th will be needed!

0
Yeah correct.