286 views

asked | 286 views

minimum MTU given is 480.. 20 bytes for header+ 460 bytes of payload
since 460 is not divisible by 8.. so we would take 456 bytes... now for 1600 datagram,1600 bytes have to be transferred in packet of size 456..
no of packets= 1600/456=3.5=4 packet.. for 4 packets 20 bytes included in each packet.. so 1680 bytes...
answered by Loyal (3.8k points)
MTU =header + data

with 480 of MTU we have 460 as data and 20B as header

1600 is fragmented into 4 parts with actual payloads :456B, 456B ,456B, 232B with 20 bye of header overhead in each fragment

actual packet size transmitted or arrived at B= 1600 + 80 = 1680Bbytes

@cse23 and @kirti

So both of you are fragmenting the whole data in sender itself(based on minimum MTU).But to go through Network 1 you dont need 4 fragments of456 Byte..as in Network1 MTU is high

So in Network1 MTU=1500B=1480B Data(divisible by 8) and 20B header

So in A we should divide packet into 2 fragments....Fragment1 with Payload 1480 and Fragment2 with 120B

Then in Router between Network 1 and 2 you need to furthur fragment Fragment1 as MTU of Network 2 is 460B Payload

So our Fragment1 will be divided into 4 fragments as below

And our Fragment2 doesnot need any furthur fragmentation since it's size is less that MTU

And all these 5 fragment will go through network 3 without any extra fragmentation

So to B we will send total  5 fragments.....each needs 20 B header...So our total data should be (1600+20*5)B=1700B

What you both did is used in IPv6 where data is fragmented in sender only based on min MTU.That is known as MTU path discovery.But here nothing such specified.So I think we should follow the method used in IPv4.

What is the answer?
my answer is 1700

because there will be 5 packets who is having a header of 20 byte
answered by (127 points)