20.01.2014 Views

Lectures notes for 2010 - KTH

Lectures notes for 2010 - KTH

Lectures notes for 2010 - KTH

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

• on a BSDI system:<br />

• each of the additional (5) fragments caused an ARP request to be generated<br />

– this violates the Host Requirements RFC - which tries to prevent ARP flooding by limiting<br />

the maximum rate to 1 per second<br />

• when the ARP reply is received the last fragment is sent<br />

– Host Requirements RFC says that ARP should save at least one packet and this should<br />

be the latest packet<br />

• unexplained anomaly: the System Vr4 system sent 7 ARP replies back!<br />

• no ICMP “time exceeded during reassembly” message is sent<br />

– BSD derived systems - never generate this error!<br />

It does set the timer internally and discard the fragments, but never sends an ICMP error.<br />

– fragment 0 (which contains the UDP header) was not received - so there is no way to<br />

know which process sent the fragment; thus unless fragment 0 is received - you are not<br />

required to send an ICMP “time exceeded during reassembly” error.<br />

Not just a fluke (i.e., a rare event)<br />

• The same error occurs even if you don’t have fragmentation - simply<br />

sending multiple UDP datagrams rapidly when there is no ARP entry is<br />

sufficient!<br />

• NFS sends UDP datagrams whose length just exceeds 8192 bytes<br />

• NFS will timeout and resend<br />

• however, there will always be this behavior - if the ARP cache has no entry <strong>for</strong> this<br />

destination!<br />

Maguire Interaction between UDP and ARP 4: 13 of 74<br />

maguire@kth.se <strong>2010</strong>.03.21 Internetworking/Internetteknik

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!